Version 3
Menu selected
Parameter | Typ | Beschreibung | ||||
Dieser Befehl benötigt keine Parameter | ||||||
Funktionsergebnis | Numerisch | ausgewählter Menübefehl | ||||
Menünummer in höherwertigen 2 Byte | ||||||
Menüzeilennummer in niederwertigen 2 Byte |
Beschreibung
Die Funktion Menu selected wird nur beim Anzeigen von Formularen verwendet. Damit finden Sie heraus, welche Menüzeile der Anwender gewählt hat.
Hat der Anwender eine Menüzeile aus dem Menü Apple/Help oder dem Menü Bearbeiten gewählt, gibt Menüauswahl keinen Wert zurück. Ein mit dem Formular verbundenes Menü können Sie aber mit Menu selected finden. Das erste Formularmenü hat die Nummer 2049, das nächste 2050 usw..
Tipp:Verwenden Sie vorzugsweise Methoden, die Menübefehlen in verknüpften Menüleisten (mit negativen Nummern) zugeordnet sind. Verknüpfte Menüleisten sind leichter zu verwalten, da Sie die Auswahl nicht prüfen müssen. Für die Befehle APPEND MENU ITEM oder INSERT MENU ITEM müssen Sie jedoch Menu selected einsetzen, da diesen Menüzeilen keine Methoden zugeordnet sind.
Menu selected gibt die Nummer des Menüs bzw. Menübefehls als Lange Ganzzahl zurück. Für die Menünummer dividieren Sie Menu selected durch 65.536 und konvertieren das Ergebnis in eine Ganzzahl. Für die Menüzeilennummer berechnen Sie den Restwert (Modulo) von Menu selected dividiert durch 65.536. Die jeweilige Formel lautet:
Menu := Menu selected \ 65536 menu command := Menu selected % 65536
Ab Version 6 können Sie diese Werte auch über Bit-Operatoren entnehmen:
Menu := (Menu selected & 0xFFFF0000) >> 16 menu command := Menu selected & 0xFFFF
Wurde kein Menübefehl ausgewählt, gibt Menu selected den Wert 0 zurück.
Beispiel
Folgende Formularmethode liefert über Menu selected die Argumente für Menü und Menübefehl an SET MENU ITEM MARK:
Case of : (Form event=On Menu Selected) If (Menu selected # 0) SET MENU ITEM MARK (Menu selected\65536;Menu selected%65536;Char(18)) End if End case
Referenz