1、1菜单设计及应用菜单设计及应用第七章第七章2学习目标学习目标 了解下拉式菜单的组成。了解下拉式菜单的组成。利用利用VFP的菜单设计器新建菜单文件,建立菜单的菜单设计器新建菜单文件,建立菜单结构。结构。为菜单选项加入分隔线、快捷键及选项执行代码,为菜单选项加入分隔线、快捷键及选项执行代码,利用利用“常规属性常规属性”对话框为菜单定义整体属性。对话框为菜单定义整体属性。掌握运行菜单的方法。掌握运行菜单的方法。进阶目标进阶目标能为一个小型管理信息系统设计菜单,整合系能为一个小型管理信息系统设计菜单,整合系统的各项功能。统的各项功能。3本讲主要内容本讲主要内容 下拉式菜单的组成下拉式菜单的组成 菜单设
2、计器菜单设计器 设计菜单选项设计菜单选项 存储并执行菜单存储并执行菜单 设置菜单的常规属性设置菜单的常规属性 设定选项的程序代码设定选项的程序代码47.1 菜单的组成菜单的组成 下拉菜单下拉菜单 快捷菜单快捷菜单l为应用系统设计方便实用的菜单是系统易为应用系统设计方便实用的菜单是系统易于使用的关键。于使用的关键。lVisual Foxpro提供的菜单设计器可以设计提供的菜单设计器可以设计下拉菜单和快捷菜单,本讲介绍如何设计下拉菜单和快捷菜单,本讲介绍如何设计下拉菜单。下拉菜单。子菜单子菜单快捷键快捷键菜单栏菜单栏菜单分隔线菜单分隔线不可选项不可选项热键热键57.2 菜单设计器菜单设计器 Vis
3、ual Foxpro Visual Foxpro中的菜单也是以文件的形中的菜单也是以文件的形式保存的,菜单文件的扩展名为式保存的,菜单文件的扩展名为.mnxmnx。用新建文件的方法,即可打开菜单设计器。用新建文件的方法,即可打开菜单设计器。选项选项名称名称选择选择菜单菜单时执时执行的行的动作动作设计设计提示提示选项选项67.2.1 建立主选项建立主选项 主选项主选项即是菜单栏中的选项。即是菜单栏中的选项。输入名称输入名称拖动改变次序拖动改变次序77.2.2 加入菜单热键加入菜单热键 用用ALT+ALT+热键热键可以直接激活菜单可以直接激活菜单 为选项加入快捷键字母的方法是在该菜单为选项加入快捷
4、键字母的方法是在该菜单名称后加上名称后加上“(字母)字母)”【例【例2 2】为上节建立的菜单为上节建立的菜单cd1.mnxcd1.mnx中的中的“文件文件”选项加上热键选项加上热键“F F”,为,为“退出退出”选项加上热键选项加上热键“X X”。87.2.3 选项执行结果选项执行结果97.2.3 选项执行结果选项执行结果 命令命令:选中菜单项后,执行一条:选中菜单项后,执行一条Visual Visual FoxPro FoxPro 的命令的命令 填充名称填充名称:输入任一名称,程序中用以识别:输入任一名称,程序中用以识别此选项是否被选取此选项是否被选取 子菜单子菜单:此选项有下一层子菜单:此选
5、项有下一层子菜单 过程过程:可以输入一系列命令,当此选项被选:可以输入一系列命令,当此选项被选取时,这一串命令会顺序执行。取时,这一串命令会顺序执行。107.2.4 加入子菜单分隔线加入子菜单分隔线F 在子菜单中加入分隔线有助于区分不同类别在子菜单中加入分隔线有助于区分不同类别的选项,使功能更加清晰。的选项,使功能更加清晰。分隔线分隔线117.2.4 加入子菜单分隔线加入子菜单分隔线F 要在菜单中加入分隔线,只要在需分隔的两要在菜单中加入分隔线,只要在需分隔的两个选项之间插入一个个选项之间插入一个“-”-”127.2.5 设定其它选项设定其它选项单击单击137.2.5 设定其它选项设定其它选项
6、2 快捷方式快捷方式:设定菜单快捷键:设定菜单快捷键 设置方法:在设置方法:在“键标签键标签”框中按下要使用的快捷框中按下要使用的快捷键键2 跳过选项跳过选项:判断其右方的条件表达式的结果,若判断其右方的条件表达式的结果,若执行菜单时条件表达式结果为执行菜单时条件表达式结果为.T.,则此菜单项就会,则此菜单项就会变为灰色字体而无法选取,表示此选项无效变为灰色字体而无法选取,表示此选项无效2 信息信息:显示在状态栏上作为选取该选项时的提示显示在状态栏上作为选取该选项时的提示2 主菜单名主菜单名:在这里输入选项的名称,用来在程序在这里输入选项的名称,用来在程序中判断是否选择该选项。中判断是否选择该
7、选项。2 备注备注:设定注解,作为解释设定注解,作为解释 147.2.6 存储并执行菜单存储并执行菜单F当菜单设计完成以后,必须先保存为菜单文件,当菜单设计完成以后,必须先保存为菜单文件,Visual FoxPro 8.0Visual FoxPro 8.0中菜单文件默认扩展名中菜单文件默认扩展名为为.MNXMNX,保存后才能执行此菜单。可以利用,保存后才能执行此菜单。可以利用“文文件件”菜单中的菜单中的“保存保存”来保存菜单文件。来保存菜单文件。F运行菜单有两种方法:运行菜单有两种方法:157.3 设置菜单的常规属性设置菜单的常规属性F“常规选项常规选项”可以设定菜单的整体属性,如自可以设定菜
8、单的整体属性,如自定义菜单与系统主菜单的相对位置,运行菜单时定义菜单与系统主菜单的相对位置,运行菜单时的设置代码和清理代码等。的设置代码和清理代码等。167.3 设置菜单的常规属性设置菜单的常规属性设定缺省的程设定缺省的程序代码序代码设定设计的菜单和设定设计的菜单和Visual FoxPro 主菜单的相对关系主菜单的相对关系 设置代码:设置代码:刚启动菜单刚启动菜单时运行的代时运行的代码。码。清理代码:清理代码:菜单定义完菜单定义完毕后执行的毕后执行的代码。代码。177.4 设定菜单选项的程序代码设定菜单选项的程序代码v 前面的工作设置了菜单的结构,这时菜单虽然可前面的工作设置了菜单的结构,这
9、时菜单虽然可以运行,但选取菜单选项时不执行任何操作。可见以运行,但选取菜单选项时不执行任何操作。可见并不是有了菜单项就可以实现功能,还要为制作的并不是有了菜单项就可以实现功能,还要为制作的菜单项指定任务,才能算是完整地制作了菜单。菜单项指定任务,才能算是完整地制作了菜单。v 可以为菜单选项指定一个命令去执行一个任务,可以为菜单选项指定一个命令去执行一个任务,此命令可以是有效的此命令可以是有效的Visual FoxPro Visual FoxPro 命令,包括对命令,包括对程序和过程的调用。程序和过程的调用。v 除了使用命令外,还可以用过程来完成任务。除了使用命令外,还可以用过程来完成任务。18
10、7.4 设定菜单选项的程序代码设定菜单选项的程序代码【例【例3 3】为】为cd1.mnxcd1.mnx中的中的“打印打印”选项建立下拉菜单选项建立下拉菜单“报表预览报表预览”和和“报表打印报表打印”,并分别设置代码,并分别设置代码,实现打印和预览已建立的报表文件实现打印和预览已建立的报表文件myreport.frxmyreport.frx。报表预览:报表预览:REPORT FORM myreportREPORT FORM myreport PREVIEW PREVIEW报表打印:报表打印:REPORT FORM myreportREPORT FORM myreport TO PRINT TO PRINT197.4.2 设置菜单选项代码的设置菜单选项代码的常用命令常用命令 调用表单:调用表单:DO FORM 调用程序:调用程序:DO 调用查询:调用查询:DO .qpr打印报表:打印报表:REPORT FORM TOPRINT预览报表:预览报表:REPORT FORM PREVIEW恢复系统菜单:恢复系统菜单:SETSYSMENUTODEFAULT退出退出VFP:QUIT