TRadioGroup Problem



  • Hi.

    Ich habe folgenden Code

    RadioGroup1->ItemIndex = (var==123) ? 0 : 1;
    ShowMessage(IntToStr(var)+"..."+IntToStr(RadioGroup1->ItemIndex)); // Ergebnis: 123 ... 0
    ShowMessage(IntToStr(var)+"..."+IntToStr(RadioGroup1->ItemIndex)); // Ergebnis: 123 ... 1
    ShowMessage(IntToStr(var)+"..."+IntToStr(RadioGroup1->ItemIndex)); // Ergebnis: 123 ... 1
    ShowMessage(IntToStr(var)+"..."+IntToStr(RadioGroup1->ItemIndex)); // Ergebnis: 123 ... 1
    

    Wie kann es sein das mitten zwischen den ShowMessage sich plötzlich der ItemIndex neu setzt? Ja ich sehe das auch auf der Form das er zuerst auf Index 0 steht und dann nach der ersten ShowMessage geht er plötzlich wieder auf Index 1.

    Ich kann btw zwei RadioGroups erstellen und das Problem würde nur noch bei der aufrteten, welche den Focus zuletzt hatte. Kennt jemand das Problem und kann erklären woran das liegen kann?

    System: WinXP SP4, CBuilder2009



  • ~Indexus schrieb:

    RadioGroup1->ItemIndex = (var==123) ? 0 : 1;
    ShowMessage(IntToStr(var)+"..."+IntToStr(RadioGroup1->ItemIndex)); // Ergebnis: 123 ... 0
    ShowMessage(IntToStr(var)+"..."+IntToStr(RadioGroup1->ItemIndex)); // Ergebnis: 123 ... 1
    

    Seltsam. Ich kann's in C++Builder XE nicht reproduzieren, und andere Versionen habe ich gerade nicht zur Verfügung.

    Du könntest mal testweise die Laufzeitpackages deaktivieren und den Debugger benutzen. Dann kannst du in den VCL-Code hineinsteppen und mitverfolgen, was da genau aufgerufen wird.

    ~Indexus schrieb:

    System: WinXP SP4

    Kommst du aus der Zukunft? 🙂



  • Ja stimmt, muss SP3 heißen 😃

    Also Laufzeitpackages verwende ich generell nicht und mit dem Debuggen, da gehöre ich leider zur Gruppe der Unwissenden. Die ganzen Assembler Speicherbereiche sagen mir rein gar nichts ^^°

    Bisher habe ich immer debugged mit der Ausgabe von Zwischenergebnissen 🤡
    Ich habe wie erwähnt mehrere TRadioGroup auf meinem Formular und das Problem macht immer nur die letzte ausgewählte TRadioGroup.



  • ~Indexus schrieb:

    und mit dem Debuggen, da gehöre ich leider zur Gruppe der Unwissenden.

    Dann ändere das mal ganz schnell. Lies das hier: http://docwiki.embarcadero.com/RADStudio/de/Überblick_zum_Debuggen
    Da gibts sogar ein Video.

    ~Indexus schrieb:

    Die ganzen Assembler Speicherbereiche sagen mir rein gar nichts ^^

    Debuggen und Assemblercode anstarren sind unterschiedliche Dinge.



  • Das Video ist leider vom Ton so schlecht und Untertitel wären sinnvoll gewesen, dass ich kaum etwas verstehe wovon der gute Mann dort spricht.

    Der erste Punkt aus der Doku funktioniert bei mir nicht einmal. Der Punkt Start->Untersuchen ist bei mir nicht auswählbar. 😞



  • Okay, wenn das nichts hilft, dann versuch mal das Minitutorial von junix:
    http://www.junix.ch/bcb/help/debug.html


Anmelden zum Antworten