ACTIVATE MENU (Comando)
Muestra y activa una barra de menús.
ACTIVATE MENU MenuBarName [NOWAIT] [PAD MenuTitleName]
Parámetros
- MenuBarName
Especifica el nombre de la barra de menús que se va a activar. - NOWAIT
Especifica que en tiempo de ejecución el programa no necesita esperar a que el usuario elija un menú en la barra de menús activa o presione la tecla ESC. En cambio, el programa continúa ejecutándose. Un menú activado mediante la opción NOWAIT no devuelve la ejecución del programa a la línea que figura a continuación del comando ACTIVATE MENU cuando se utiliza el comando DEACTIVATE MENU. - PAD MenuTitleName
Especifica el nombre del título de menú seleccionado automáticamente cuando se activa la barra de menús. Si no especifica un nombre de título de menú, se activará de forma predeterminada el primer nombre de título de menú de la barra de menús activada.
Observaciones
Muestra y activa la barra de menús especificada mediante MenuBarName. Este comando funciona en combinación con DEFINE MENU y DEFINE PAD.
Nota Cuando se incluye la barra de menús del sistema de Visual FoxPro (_MSYSMENU) en una aplicación, no es necesario activar el menú. En su lugar, ejecute SET SYSMENU AUTOMATIC.
Ejemplo
El ejemplo siguiente utiliza ACTIVATE MENU para mostrar y activar un sistema de menús definido por el usuario. En primer lugar, se guarda en memoria la barra de menús actual del sistema con SET SYSMENU SAVE y, a continuación, se eliminan todos los títulos de menús del sistema mediante SET SYSMENU TO.
Se crean dos títulos de menú con DEFINE PAD y se emplea DEFINE POPUP para crear un menú desplegable para cada título de menú. DEFINE BAR se usa para crear elementos de menú en cada uno de estos menús. Cuando se elige un título de menú, ON PAD utiliza ACTIVATE POPUP para activar el menú correspondiente. ACTIVATE MENU muestra y activa la barra de menús.
Cuando se elige un elemento de menú de uno de los menús, se ejecuta el procedimiento CHOICE. CHOICE muestra el nombre del elemento elegido y el nombre del menú donde está incluido.
** 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
Vea también
CLEAR (Comandos) | CREATE MENU (Comando) | DEACTIVATE MENU (Comando) | DEFINE MENU (Comando) | DEFINE PAD | HIDE MENU (Comando) | SET SYSMENU | SHOW MENU