ACTIVATE MENU-Befehl

Zeigt eine Menüleiste an und aktiviert diese.

ACTIVATE MENU MenuBarName   [NOWAIT]   [PAD MenuTitleName]

Parameter

  • MenuBarName
    Gibt den Namen der Menüleiste an, die aktiviert werden soll.
  • NOWAIT
    Legt fest, dass das Programm zur Laufzeit nicht darauf wartet, dass der Benutzer ein Menü aus der aktiven Menüleiste wählt oder ESC drückt. Stattdessen fährt das Programm mit der Ausführung fort. Wurde ein Menü mit der NOWAIT-Option aktiviert, wird die Programmausführung, nachdem der zugehörige DEACTIVATE MENU-Befehl ausgegeben ist, nicht mit der Zeile fortgesetzt, die unmittelbar auf den ACTIVATE MENU-Befehl folgt.
  • PAD MenuTitleName
    Legt fest, dass beim Aktivieren der Menüleiste automatisch der Menüname markiert wird. Wenn Sie keinen Menünamen angeben, wird standardmäßig der Name des ersten Menüs der aktivierten Menüleiste ausgewählt.

Hinweise

Zeigt die von MenuBarName angegebene Menüleiste an und aktiviert diese. Dieser Befehl arbeitet zusammen mit dem DEFINE MENU- und dem DEFINE PAD-Befehl.

Anmerkung   Wenn Sie die Visual FoxPro-Systemmenüleiste (_MSYSMENU) innerhalb einer Anwendung einsetzen, muss die Menüleiste nicht aktiviert werden. Verwenden Sie stattdessen SET SYSMENU AUTOMATIC.

Beispiel

Im folgenden Beispiel wird der ACTIVATE MENU-Befehl verwendet, um ein benutzerdefiniertes Menüsystem anzuzeigen und zu aktivieren. Die aktuelle Systemmenüleiste wird zuerst mit SET SYSMENU SAVE im Arbeitsspeicher gespeichert, und anschließend werden alle Systemmenünamen mit SET SYSMENU TO entfernt.

Mit DEFINE PAD werden zwei Menünamen erstellt, mit DEFINE POPUP wird ein Dropdown-Menü für jeden Menünamen erstellt. Die Elemente dieser Menüs werden mit DEFINE BAR erstellt. Wird ein Menüname gewählt, wird mit Hilfe der ACTIVATE POPUP-Klausel von ON PAD das entsprechende Menü aktiviert. ACTIVATE MENU zeigt die Menüleiste an und aktiviert diese.

Wird aus einem Menü ein Element ausgewählt, dann wird die CHOICE-Prozedur ausgeführt. CHOICE zeigt den Namen des gewählten Elements und den Namen des Menüs an, dessen Bestandteil das Element ist.

** Name this program ACTIMENU.PRG ** CLEAR SET SYSMENU SAVE SET SYSMENU TO ON KEY LABEL ESC KEYBOARD CHR(13) DEFINE MENU example BAR AT LINE 1 DEFINE PAD convpad OF example PROMPT '<Conversions' COLOR SCHEME 3 ; KEY ALT+C, '' DEFINE PAD cardpad OF example PROMPT 'Card <Info' COLOR SCHEME 3 ; KEY ALT+I, '' ON PAD convpad OF example ACTIVATE POPUP conversion ON PAD cardpad OF example ACTIVATE POPUP cardinfo DEFINE POPUP conversion MARGIN RELATIVE COLOR SCHEME 4 DEFINE BAR 1 OF conversion PROMPT 'Ar<ea' ; KEY CTRL+E, '^E' DEFINE BAR 2 OF conversion PROMPT '<Length' ; KEY CTRL+L, '^L' DEFINE BAR 3 OF conversion PROMPT 'Ma<ss' ; KEY CTRL+S, '^S' DEFINE BAR 4 OF conversion PROMPT 'Spee<d' ; KEY CTRL+D, '^D' DEFINE BAR 5 OF conversion PROMPT '<Temperature' ; KEY CTRL+T, '^T' DEFINE BAR 6 OF conversion PROMPT 'T<ime' ; KEY CTRL+I, '^I' DEFINE BAR 7 OF conversion PROMPT 'Volu<me' ; KEY CTRL+M, '^M' ON SELECTION POPUP conversion DO choice IN actimenu; WITH PROMPT( ), POPUP( ) DEFINE POPUP cardinfo MARGIN RELATIVE COLOR SCHEME 4 DEFINE BAR 1 OF cardinfo PROMPT '<View Charges' ; KEY ALT+V, '' DEFINE BAR 2 OF cardinfo PROMPT 'View <Payments' ; KEY ALT+P, '' DEFINE BAR 3 OF cardinfo PROMPT 'Vie<w Users' ; KEY ALT+W, '' DEFINE BAR 4 OF cardinfo PROMPT '-' DEFINE BAR 5 OF cardinfo PROMPT '<Charges ' ; KEY ALT+C, '' ON SELECTION POPUP cardinfo; DO choice IN actimenu WITH PROMPT( ), POPUP( )

ACTIVATE MENU example
DEACTIVATE MENU example
RELEASE MENU example EXTENDED
SET SYSMENU TO DEFAULT
ON KEY LABEL ESC
PROCEDURE choice
PARAMETERS mprompt, mpopup
WAIT WINDOW 'You chose ' + mprompt + ' from popup ' + mpopup NOWAIT

Siehe auch

CLEAR-Befehle | CREATE MENU-Befehl | DEACTIVATE MENU-Befehl | DEFINE MENU-Befehl | DEFINE PAD-Befehl | HIDE MENU-Befehl | SET SYSMENU-Befehl | SHOW MENU-Befehl