DEACTIVATE MENU - Befehl

Deaktiviert eine benutzerdefinierte Menüleiste und entfernt sie vom Bildschirm, ohne dabei die Menüleistendefinition aus dem Arbeitsspeicher zu löschen.

DEACTIVATE MENU MenuName1 [, MenuName2 ...] | ALL

Parameter

  • MenuName1 [, MenuName2 ...]
    Gibt die Namen der Menüleisten an, die deaktiviert werden sollen. Sie können eine Reihe von Menüleisten gleichzeitig deaktivieren, indem Sie eine Liste von durch Komma getrennten Menüleistennamen angeben.
  • ALL
    Deaktiviert alle aktiven Menüs.

Hinweise

DEACTIVATE MENU entfernt eine oder mehrere aktive Menüleisten aus dem Visual FoxPro-Hauptfenster oder einem benutzerdefinierten Fenster, ohne die Menüleistendefinition aus dem Arbeitsspeicher zu löschen. Eine Menüleiste kann mit ACTIVATE MENU und dem Namen der betreffenden Menüleiste wieder aktiviert werden.

Tipp   Wenn Sie die Systemmenüleiste (_MSYSMENU) in einer Anwendung verwenden, benötigen Sie die Menüleiste nicht zu definieren, zu aktivieren oder zu deaktivieren. Verwenden Sie stattdessen SET SYSMENU AUTOMATIC.

Wenn Sie eine oder mehrere Menüleisten aus dem Arbeitsspeicher löschen möchten, verwenden Sie RELEASE MENUS. Mit CLEAR MENUS oder CLEAR ALL können Sie alle Menüleisten aus dem Arbeitsspeicher löschen.

Die Programmsteuerung wird an die Programmzeile direkt nach der Zeile übergeben, durch die die Menüleiste aktiviert wurde, es sei denn, die Menüleiste wird mit DEFINE MENU BAR erstellt oder mit ACTIVATE MENU NOWAIT aktiviert.

Beispiel

Im folgenden Beispiel wird mit DEACTIVATE MENU ein Menü deaktiviert und vom Bildschirm entfernt. Die aktuelle Systemmenüleiste wird mit SET SYSMENU SAVE gespeichert, und alle Systemmenünamen werden mit SET SYSMENU TO entfernt.

Mit DEFINE PAD werden zwei neue Menünamen angelegt, und mit DEFINE POPUP wird für jeden Menünamen ein Menü erstellt. Mit DEFINE BAR werden Menüpunkte innerhalb der Menüs erstellt. Wird ein Menütitel gewählt, wird mit 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 gewählt, wird die Prozedur CHOICE ausgeführt. Diese zeigt den Namen des gewählten Elements und den Namen des Menüs an, dessen Bestandteil das Element ist. Die Programmsteuerung wird in der Zeile direkt nach ACTIVATE MENU fortgesetzt.

Zum Schluss wird das Menü deaktiviert, vom Bildschirm gelöscht und mit RELEASE MENUS EXTENDED aus dem Speicher freigegeben.

** Name this program DEACMENU.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 deacmenu 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 ' ON SELECTION POPUP cardinfo; DO choice IN deacmenu WITH PROMPT( ), POPUP( )

ACTIVATE MENU example
DEACTIVATE MENU example
RELEASE MENU example EXTENDED
SET SYSMENU NOSAVE
SET SYSMENU TO DEFAULT
ON KEY LABEL ESC

PROCEDURE choice
PARAMETERS mprompt, mpopup
WAIT WINDOW 'You chose ' + mprompt + ;
   ' from popup ' + mpopup NOWAIT

Siehe auch

ACTIVATE MENU | CLEAR ALL | CLEAR MENUS | CREATE MENU | DEFINE MENU | HIDE MENU | RELEASE | SHOW MENU