Benutzer-Werkzeuge

Webseiten-Werkzeuge


k13:k13.3:k13.3.1:start

13.3.1 Optionsmenü

Ein Optionsmenü ist ein Menü mit einem Text und einer CheckBox, deren Wert zwischen den zwei zwei Zuständen ☑ (aktiviert) und ☐ (de-aktiviert) umgeschaltet werden kann. Um ein Menü mit dieser Eigenschaft zu realisieren, müssen Sie die Checked-Eigenschaft eines Menüs benutzen. Sie können diese Eigenschaft im Menüeditor oder im Quelltext setzen. Die Checked-Eigenschaft eines Menüs korrespondiert mit der Toggle-Eigenschaft.

Die Eigenschaft Menu.Checked ist ein Synonym für Menu.Value und zeigt an, ob das Häkchen ☑ vor dem Menü-Text angezeigt wird oder nicht ☐. Sie kontrolliert jedoch in keiner Weise das Verhalten des Optionsmenüs! Ist Menu.Toggle gesetzt, dann wird Menu.Checked automatisch invertiert, wenn das Optionsmenü angeklickt wird.

13.3.1.1 Beispiel 1

In einem Programm, das Bilder lädt und anzeigt wollen Sie dem Benutzer u.a. die Möglichkeit geben, das Bild zu editieren. Dazu erzeugen Sie zum Beispiel einen (Unter-)Menüpunkt mnu21AllowedEdit mit der Beschriftung „Bild-Bearbeitung“ in einem Menü mnuMenu2 mit der Beschriftung „Extras“:

Public Sub CreateAndShowMenus()'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  mnuMenu2 = New Menu(FMain, False) ' Menü-Leiste wird angezeigt
  mnuMenu2.Caption = "Extras"  
 
  mnu21AllowedEdit = New Menu(mnuMenu2) As "mnuAllowedEdit"
  mnu21AllowedEdit.Caption = "Bild-Bearbeitung"
  mnu21AllowedEdit.Visible = True
 
  mnu21AllowedEdit.Toggle = True
  mnu21AllowedEdit.Checked = False
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~End ' CreateAndShowMenus()

B1

Abbildung 13.3.1.1.1: Checkbox de-aktiviert – Bildbearbeitung nicht erlaubt (Starteinstellung)

[1] Public Sub mnuAllowedEdit_Click()
[2]   
[3]   If bOpenImage = True Then 
[4]      MM.mnu12Edit.Enabled = mnu21AllowedEdit.Checked
[5]   Endif ' bOpenImage = True ?    
[6] 
[7] End ' mnuAllowedEdit_Click()
  • Wird der Menüeintrag „Bild-Bearbeitung“ angeklickt, dann wird mnu21AllowedEdit.Checked automatisch auf „aktiviert“ ☑ umgeschaltet (→ Abbildung 13.3.1.1.2), weil die Toggle-Eigenschaft auf True gesetzt ist.
  • Der aktuelle Wert von mnu21AllowedEdit.Checked in der Zeile 4 schaltet als Menü-Aktion den Bildeditor im Menü mnu12Edit frei.

B2

Abbildung 13.3.1.1.2: Checkbox aktiviert – Bildbearbeitung zugelassen

13.3.1.2 Beispiel 2

Das Beispiel 2 bezieht sich auf den Editor 'Notepad' aus der Beispielsammlung von Gambas. Im Editor können Sie den Zeilenumbruch in der Text anzeigenden Komponente TextArea ein- und ausschalten. Im Menüeditor ist die Eigenschaft mnuWrap.Checked=False und mnuWrap.Toggle nicht gesetzt. Deshalb müssen Sie die Umschaltung der Checkbox-Zustände wie in der Zeile 3 selbst vornehmen:

[1] Public Sub mnuWrap_Click()
[2] 
[3]   mnuWrap.Checked = Not mnuWrap.Checked
[4]   txtNotePad.Wrap = mnuWrap.Checked
[5] 
[6] End ' mnuWrap_Click()

B3

Abbildung 13.3.1.2.1: Checkbox ist beim Programmstart aktiviert

B4

Abbildung 13.3.1.2.2: Checkbox de-aktiviert – Zeilenumbruch kann aktiviert werden


Die Anzeige eines Icon im Menü-Eintrag 'Zeilenumbruch' einerseits und die Anzeige einer aktivierten Checkbox ☑ gelingen nur dann, wenn Sie als Graphical User Interface entweder die QT/QTK+ Wechselkomponente (gb.gui) oder die GTK+ Komponente einsetzen. Der Einsatz der QT4-Komponente erzeugt einen Fehler bei der Anzeige des vorgesehenen Icons.

Download

Artikel

Download

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
k13/k13.3/k13.3.1/start.txt · Zuletzt geändert: 20.06.2016 (Externe Bearbeitung)

Seiten-Werkzeuge