Checkboxe (maximal 1 aktiviert)



  • Hier noch was zu diesem Design
    http://www.frankmahler.de/mshame/Controls.htm



  • Naja es gibt halt 2 button

    bei einem darf immer nur 1 checkbox gewählt sein
    beim anderen button ist es egal da dürfen ruhig alle aktiv sein...



  • Hallo

    mein erster Vorschlag wäre, die Bedingung lieber auf zwei verschiedene Arten von Auswahlen aufzuteilen (nur eine Option : RadioGroup, alle möglich : Checkbox-Liste). Das ganz statt überButtons über ein TPageControl auswählbar.

    Wenn du das nicht willst, dann mußt du wie ich schon gesagt habe über den OnClick-Event der Checkbox-Controls dann je nach ausgewählten modus und auslösenten Control bestehende Auswahlen rückgängig machen.

    bis bald
    akari



  • Hmm ich werde es mal mit Radio für eine und Checkbox für andere versuchen mal sehen was bei rum kommt 🙂



  • void __fastcall TForm1::CheckBox1Click(TObject *Sender)
    {
    if(CheckBox1->Checked == true)
     {
     CheckBox2->Checked = false;
     CheckBox3->Checked = false;
     }
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::CheckBox2Click(TObject *Sender)
    {
    if(CheckBox2->Checked == true)
     {
     CheckBox1->Checked = false;
     CheckBox3->Checked = false;
     }
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::CheckBox3Click(TObject *Sender)
    {
    if(CheckBox3->Checked == true)
     {
     CheckBox1->Checked = false;
     CheckBox2->Checked = false;
     }
    }
    //---------------------------------------------------------------------------
    


  • Hallo

    Timon&Pumba schrieb:

    Es sind 8 checkboxen vorhanden die man je nach Bedarf aktivieren oder Deaktiveiern kann..

    Du willst also jetzt manuell alle 8 Events mit jeweils allen 8 Checkboxen überprüfen?
    Dann hast du das Prinzip von OOP und Funktionen allgemnein noch nicht richtig verstanden.

    bis bald
    akari



  • es funktioniert und geht schnell (copy&paste, nur zahlen ändern)



  • Hallo

    Und wenn die Controls einfach nur sinnvolle Namen und nicht nur Zahlen haben?
    Und wenn sich irgendetwas später an den Controls ändert, das die Überprüfung in allen acht Methoden geändert werden muß?
    Eine Lösung die am einfachschnell und einfach ist (grade C&P), ist meistens nachher unübersichtlich und fehleranfällig.

    bis bald
    akari



  • Das wichtigste Argument dürfte sein, dass nach etablierten GUI-Richtlinien für exklusive Auswahlen eben RadioButtons bzw. RadioGroups verwendet werden, CheckBoxen hingegen immer dann, wenn jede Auswahl unabhängig ist.
    Wer sich nicht daran hält, der verwirrt den Anwender und erschwert die Benutzung des Programmes.



  • @Jansen pranger mich jetzt nicht aber ich habe nun tatsälich die Checkboxen wie Radiobuttons programmiert :p :p.

    Dies aus den einfachen Grund der FAULHEIT 😉
    Es erwies sich als einfacher eine If-Abfrage zu machen...
    Einfach den zweiten Tabsheet der Pagecontrol zum Kontrollanlass gemacht.. da die 2 Buttons auf verschiedenen TabPages liegen..

    Im Grunde hätte man ja auf einem Tabsheet die Checkboxen und auf dem anderen die Radiogroups machen können aber dann hätte ich wieder zuviel umprogrammieren können also bin ich den einfachsten Weg geangen 🙂

    Danke an alle nochmal.. 🙂


Anmelden zum Antworten