RadioGroup nach "checked" abfragen



  • Hallo,

    das ist schon gaaanz oben im Thread beantwortet:

    Joe_M. schrieb:

    Über TRadioGroup::ItemIndex. Wenn der -1 ist, ist nichts ausgwählt. Ansonsten entspricht ItemIndex der Position des ausgewälten Eintrags in der RadioGroup.

    😃



  • Das habe ich auch gelesen, aber das hilft mir nicht weiter.

    So sieht der Code ja mit einem normalen RadioButton aus:

    void __fastcall TForm1::RadioButton2Click(TObject *Sender)
    {
       RadioGroup1->Visible=true;
       RadioGroup1->ItemIndex=0;
    }
    

    Sprich wenn man den 2. RadioButton "aktviert", also direkt anklickt, wird die RadioGroup sichtbar und gleich das erste Item aktiviert.

    Geht dieses Verfahren auch mit 2 getrennten RadioGroups ?



  • HomerA55 schrieb:

    Geht dieses Verfahren auch mit 2 getrennten RadioGroups ?

    Hmm, wo ist hier ein Problem und warum probierst du es nicht selbst aus?
    Ein Klick auf ein Button innerhalb einer Radiogroup gibt immer den ItemIndex.



  • Also um es mal genauer zu beschreiben was ich meine:

    Wenn ich zu diesem Code gelangen will -->

    void __fastcall TForm1::RadioButton2Click(TObject *Sender)
    {
    
    }
    

    klicke ich auf den RadioButton, gehe dann auf den Reiter "Ereignisse" und klicke doppelt auf "OnClick".

    Habe ich nun aber eine RadioGroup mit ihren Items, kann ich dieses als gesamtes nur einmal anklicken.

    Füge ich dann eine OnClick Funktion hinzu, sieht das so aus:

    void __fastcall TForm1::RadioGroup1Click(TObject *Sender)
    {
    
    }
    

    Das bedeutet aber, dass diese Funktion ausgeführt wird, wenn ich auf irgendeine Stelle der RadioGroup klicke, und nicht auf ein bestimmtes Item der Group.



  • Hallo

    In der Eventfunktion must du doch nur noch auf RadioGroup::ItemIndex schauen, um zu wissen welcher Eintrag gerade ausgewählt ist. Es gibt jedenfalls keine Events für die einzelnen Radio-Elemente.

    bis bald
    akari



  • da müßtest du dann eher einen TGroupBox verwenden



  • Linnea schrieb:

    da müßtest du dann eher einen TGroupBox verwenden

    Danke, die Antwort hat mir weitergeholfen!

    Hätte ich tatsächlich selber drauf kommen können. Man lernt nie aus 😉



  • Hallo Gemeinschaft, insbesondere Eliza und HomerA55,

    ich habe mich gerade wiedereinmal mit der TRadioGroup-Komponente beschäftigt und etwas gefunden, dass für Euch interessant sein dürfte:

    Mittels MyRadioGroup->Buttons[<ButtonIndex>] kann ich auf alle Eigenschaften einzelner TRadioButtons innerhalb einer TRadioGroup zugreifen. Den Zugriff auf die TabStop-Eigenschaft der einzelnen TRadioButtons zur Laufzeit habe ich erfolgreich getestet. Checked und OnClick werden mir zur Designzeit im BDS2006-QuelltextEditor auch angeboten (AutoVervollständigen aktiviert). Es sollte also möglich sein einzelne Checked-Abfragen oder differenzierte OnKlick-Methoden zu realisieren! 😉

    MfG



  • Das ist aber deutlich umständlicher als TRadioGroup::ItemIndex und TRadioGroup::OnClick() zu verwenden.

    Just my 2 cents...



  • Joe_M. schrieb:

    Das ist aber deutlich umständlicher [...]

    Es wurde nach Möglichkeiten gefragt - den Aufwand muss jeder für sich bewerten. Ich hatte eine Problematik, bei der MyRadioGroup->Buttons[] die einfachste Realisierung ermöglichte...

    Raise to 4 cents! 🕶


Anmelden zum Antworten