Zitat von
moperswings:
der erste Vorschlag hat den Nachteil, dass der Button angezeigt wird, nachdem ein Wert gleich in der ersten RadioGroup angeklickt wurde.
Das kann so nicht stimmen (vorausgesetzt, alle RadioGroups werden mit ItemIndex -1 initialisiert). Mein Code sagt: Der Button wird sichtbar, wenn in der ersten RadioGroup
UND in der zweiten
UND in der dritten (für Dich: UND in jeder weiteren) ein Element ausgewählt wurde.
Zitat von
moperswings:
Beim Zweiten gibt es zu viele Fehlermeldungen, mit denen ich im Moment nichts anfangen kann.
Ich muss mal sehen, ob ich aus Deinen Vorschlägen was zusammenbauen kann.
Deshalb sagte ich ja: Untersuche die verwendeten Methoden mit der
OH. Jürgen
/Edit: Beim zweiten Weg hatte ich vor allem eine Klammer vergessen.
Erläuterungen zu diesem Verfahren:
- Gesucht wird als Result der Status aller RadioGroups.
- Sender ist immer eine RadioGroup, kein TabSheet.
- Gesucht wird das aktuelle TabSheet. Ich muss also das übergeordnete Control benutzen.
- Alle Controls dieses TabSheets werden geprüft.
- Wenn es sich um eine RadioGroup handelt, wird dessen Status dem Gesamtergebnis hinzugefügt.
- Wenn es sich um einen Button handelt und dieser die gewünschte Beschriftung enthält, ist es der, der abschließend freigegeben wird.
- Nach Abschluss der Prüfungen kann das Ergebnis für den Button genutzt werden.
Ich habe das Verfahren in #3 korrigiert und die Registrierung des Buttons eingebaut.
Zusatzbemerkung 1: Diese Prozedur wurde jetzt so umfangreich, dass sie besser in eine eigene Prozedur ausgelagert werden sollte. Dann kann sie auch einfacher von verschiedenen TabSheets aus aufgerufen werden.
Zusatzbemerkung 2: In solchen Fällen gefällt mir Button.Enabled besser als Button.Visible, weil der Anwender dann direkt sieht, dass sich noch etwas ändern kann.
Viel Erfolg! Jürgen