在下面的示例中,使用 on selection menu 命令指定从 visual foxpro 系统菜单栏上选定菜单标题时执行某个过程。使用 set sysmenu save 命令将当前系统菜单栏保存在内存中,
并用 set sysmenu to 命令删除所有的系统菜单标题。define pad 命令创建若干系统菜单标题。当选择某个菜单标题时,执行由 on selection menu 命令为菜单栏指定的 choice 过程。此过程显示您选定的菜单标题的名字以及菜单栏的名字。如果选定了“退出”菜单标题,
则还原初始的 visual foxpro 系统菜单。
*** 此程序名为 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