4.3.5 Welche Besonderheiten gibt es bei Optionbuttons?
OptionButton

Ein OptionButton kann eigentlich immer nur zusammen mit mindestens einem weiteren Optionbutton verwendet werden. Mehrere Optionbuttons werden zusammengefasst um zwischen ihnen eine eindeutige Auswahl zu ermöglichen.
graphic
Innerhalb eines Dialoges muss folgendes beachtet werden um Optionbutton zusammen zufassen. Im Dialog gibt es kein Gruppierungselement das eine Gruppe von Kontrollfeldern zusammenfasst. Die Gruppierung erfolgt über die Reihenfolge. Alle in der Reihenfolge aufeinander folgenden Optionbutton werden zusammengruppiert. Durch ein anderes Kontrollfeld kann man diese Gruppierung unterbrechen. Die Reihenfolge der Kontrollfelder kann man in dem Eigenschaft "Aktivierungsreihenfolge" sehen und einstellen.
Hier ein Beispiel. Mit zwei geplanten Gruppen von Optionbutton. Die Reihenfolge der Optionbutton ist eins bis sechs. Dadurch ist die Auswahl nur über eine dieser sechs Optionen möglich.
graphic

Um dieser jetzt in zwei Gruppen aufzuteilen muß in der Reihenfolge eine viertes Kontrollfeld eingefügt werden. Hierfür bietet sich der Rahmen an. Dieser stellt so wohl ein zusätzliches Kontrollfeld bereit, wie auch eine optische Trennung der Gruppen. Dieser erhält dann in der Reihenfolge die Position nach dem letzten Optionbutton in der Gruppe.
graphic
Achtung: Wenn bei der Dialoggestaltung das Kontrollfeld zur Trennung in Gruppen nach allen Optionbuttons danach eingefügt wird, kann man im Dialogeditor den Status nicht entsprechend der geplanten Gruppierung aktivieren. Dann reagiert der Dialogeditor so, als wären alle Optionbuttons zusammen, obwohl sie es laut Reihenfolge nicht sind.

Titel
Legt den Text des Optionbuttons fest.
MyControl.Model.Label = "Text"

Status
Mit dieser Eigenschaft wird festgelegt ob der Schalter ausgewählt werden kann oder nicht. Da innerhalb einer Gruppe von Optionbutton nur einer den Status ausgewählt haben kann, wird dafür der zuletzt Festgelegte verwendet.

MyControl.State = true/false
Auswahl=MyControl.State
'oder
MyControl.Model.State = true/false
Auswahl=MyControl.Model.State