ON SELECTION MENU-Befehl

Gibt einen Befehl an, der ausgeführt wird, wenn Sie aus einer Menüleiste einen beliebigen Menütitel wählen.

ON SELECTION MENU MenuBarName | ALL   [Command]

Parameter

  • MenuBarName
    Gibt den Namen der Menüleiste an, der Sie einen Befehl zuordnen. Der Befehl wird ausgeführt, wenn Sie aus der Menüleiste irgendeinen Menütitel wählen. Sie können entweder den Namen einer mit DEFINE MENU erstellten benutzerdefinierten Menüleiste oder die Microsoft Visual FoxPro-Systemmenüleiste _MSYSMENU angeben.
  • ALL
    Führt einen Befehl aus, wenn Sie aus einer beliebigen Menüleiste einen beliebigen Menütitel wählen.
  • Command
    Gibt den Befehl an, der beim Wählen eines Menütitels ausgeführt wird. Verwenden Sie ON SELECTION MENU ohne einen Befehl, um die Zuordnung eines Befehls zu einer Menüleiste aufzuheben.

Hinweise

Setzen Sie ON SELECTION MENU zwischen DEFINE MENU und ACTIVATE MENU, wenn Sie eine Menüleiste erstellen und aktivieren.

Verwenden Sie ON SELECTION PAD, um einen Befehl auszuführen, wenn Sie einen bestimmten Menüeintrag wählen. ON SELECTION PAD hat Vorrang vor ON SELECTION MENU. Verwenden Sie ON PAD, um ein Menü oder eine Menüleiste zu aktivieren, wenn ein bestimmter Menüname gewählt wurde.

Verwenden Sie ON SELECTION MENU ohne einen Befehl, um die Zuordnung eines Befehls zu einer Menüleiste aufzuheben.

Beispiel

Im folgenden Beispiel wird ON SELECTION MENU verwendet, um eine Prozedur auszuführen, wenn ein Menüname aus der Visual FoxPro-Systemmenüleiste gewählt wird.

Die aktuelle Systemmenüleiste wird mit SET SYSMENU im Arbeitsspeicher gespeichert. Alle Systemmenünamen werden mit SET SYSMENU TO gelöscht.

Mehrere Systemmenünamen werden mit DEFINE PAD erstellt. Wenn Sie einen Menütitel wählen, wird die Prozedur choice, die der Menüleiste mit ON SELECTION MENU zugeordnet ist, ausgeführt. Die Prozedur choice zeigt den Namen des gewählten Menütitels und den Namen der Menüleiste an. Wenn Sie den Exit-Menütitel wählen, wird das ursprüngliche Visual FoxPro-Systemmenü wiederhergestellt.

** Name this program ONMENU.PRG ** CLEAR SET SYSMENU SAVE SET SYSMENU TO DEFINE PAD padSys OF _MSYSMENU PROMPT '<System' COLOR SCHEME 3 ; KEY ALT+S, '' DEFINE PAD padEdit OF _MSYSMENU PROMPT '<Edit' COLOR SCHEME 3 ; KEY ALT+E, '' DEFINE PAD padRecord OF _MSYSMENU PROMPT '<Record' COLOR SCHEME 3 ; KEY ALT+R, '' DEFINE PAD padWindow OF _MSYSMENU PROMPT '<Window' COLOR SCHEME 3 ; KEY ALT+W, '' DEFINE PAD padReport OF _MSYSMENU PROMPT 'Re<ports' COLOR SCHEME 3 KEY ALT+P, '' DEFINE PAD padExit OF _MSYSMENU PROMPT 'E<xit' COLOR SCHEME 3 ; KEY ALT+X, '' ON SELECTION MENU _MSYSMENU ; DO choice IN onmenu WITH PAD( ), MENU( ) PROCEDURE choice PARAMETER gcPad, gcMenu WAIT WINDOW 'You chose ' + gcPad + ; ' from menu ' + gcMenu NOWAIT IF gcPad = 'PADEXIT' SET SYSMENU TO DEFAULT ENDIF

Siehe auch

ACTIVATE MENU | DEFINE MENU | ON PAD | ON SELECTION PAD