combobox item geklickt alle groupboxen bis auf eine invisible



  • Hi

    ich benutze rad studio 2009. Ich habe mehrere groupboxen übereinader und möchte diese über eine Combobox so ansteuern, dass wenn ich ein item der combobox anklicke, alle groupboxen bis auf eine, die auf das item der combobox zugeordnet ist, invisible sind und ich dann in die Edit felder der aktiven groupbox einträge schreiben kann.
    1. Kann ich das so machen ?
    2. Wie mach ich das am besten ?

    Könnt ihr mir bitte helfen. Das wäre sehr lieb von euch.

    MfG



  • Hallo

    Ja, grundsätzlich ist das möglich. Du must im ComboBox-Event die Auswahl der ComboBox auswerten und davon ausgehend die Visible-Eigenschaften deiner GroupBoxen setzen.

    Ich halte das allerdings für schlechten Stil. Besser ist es, nur genau eine GroupBox zu verwenden, und diese entsprechend der ComboBox-Auswahl immer neu zu konfigurieren.

    bis bald
    akari



  • Danke für die schnelle antwort.
    Das mit dem neu konfigurieren kann ich mir noch gar nicht vorstellen.
    Gibts da Code beispiele im Netz ?

    Bei meinem versuch. welches event nehm ich denn da und wie funktioniert das anhand eines bespiels ?
    Ist das das onselect event ?



  • Hallo

    dashulala schrieb:

    Das mit dem neu konfigurieren kann ich mir noch gar nicht vorstellen.
    Gibts da Code beispiele im Netz ?

    Da kann ich dir keine konkreten Beispiele geben, denn das hängt sehr davon ab, was du überhaupt in den GroupBoxen drinne hast. Allgemein gilt : Auch VCL-Controls können dynamisch zur Laufzeit erstellt und gelöscht werden. Siehe FAQ hier im Forum, die Beiträge im Abschnitt "Komponenten benutzen".

    Bei meinem versuch. welches event nehm ich denn da und wie funktioniert das anhand eines bespiels ?
    Ist das das onselect event ?

    OnSelect oder OnChange. Danach kannst du z.B. mit switch über die Auswahl entscheiden, welche GroupBoxen du auf Visible = false schalten mußt, und welche auf true.

    Eine weitere Alternative, je nachdem was du mit dem ganzen überhaupt bezweckst, wäre die Verwendung von TPageControl. Du ersetzt die ComboBox durch das PageControl, und jede einzelene GroupBox packst du auf eine einzelne Seite des PageControls.

    bis bald
    akari


Anmelden zum Antworten