您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 第9章VFP6菜单设计
第9章VFP6菜单设计学习要点1、规划应用程序菜单系统。2、使用菜单设计器设计应用系统菜单,为菜单指定任务。3、自定义工具栏及在表单集中添加自定义工具栏。9.1在应用程序中使用菜单9.2创建自定义工具栏退出小结返回9.1在应用程序中使用菜单9.1.1创建菜单系统9.1.2规划菜单系统9.1.3创建菜单9.1.4在应用程序中包含菜单9.1.5为菜单系统指定任务返回退出9.1.1创建菜单系统用户在查找信息之前,首先看到的便是菜单。如果把菜单设计得很好,那么只要根据菜单的组织形式和内容,用户就可以很好地理解应用程序。为此,VFP提供了“菜单设计器”,可以用来创建菜单,提高应用程序的质量。创建菜单系统的大量工作是在“菜单设计器”中完成。在项目管理器中选择“其他”选项卡,从中选择“菜单”,然后单击“新建”打开“新建菜单”对话框。选择“菜单”,打开“菜单设计器”。创建一个菜单系统包括若干步骤。不管应用程序的规模多大,打算使用的菜单多么复杂,创建菜单系统都需以下步骤:第1步、规划与设计系统:确定需要哪些菜单、出现在界面的何处以及哪几个菜单要有子菜单等等。有关规划菜单系统的详细内容,请参阅本章稍后的规划菜单系统。第2步、创建菜单和子菜单:使用菜单设计器可以定义菜单标题、菜单项和子菜单。第3步、按实际要求为菜单系统指定任务:指定菜单所要执行的任务,例如显示表单或对话框等。另外,如果需要,还可以包含初始化代码和清理代码。初始化代码在定义菜单系统之前执行,其中可以打开文件;声明变量;或将菜单系统保存到堆栈中,以便可以在后面的程序执行中恢复。清理代码中包含的代码在菜单的定义代码之后执行,使菜单和菜单项可用或不可用。第4步、生成菜单程序。第5步、运行生成的程序,测试菜单系统。返回9.1.2规划菜单系统应用程序的实用性一定程度上取决于菜单系统的质量。花费一定时间规划菜单,有助于用户接受这些菜单,同时也有助于用户对这些菜单的学习。设计菜单系统时,要考虑下列准则:以建立Gxglxt菜单为例说明规划菜单系统的准则:1、按照用户所要执行的任务组织系统,而不要按应用程序的层次组织系统。只要查看菜单和菜单项,用户就应该可以对应用程序的组织方法有一个感性认识。因此,要设计好这些菜单和菜单项,必须清楚用户思考问题的方法和完成任务的方法。根据简单的Gxglxt项目的基本任务,可以将所建立的菜单系统分为和系统有关的操作(如操作员注册、添加、删除操作员、退出系统等);与数据输入有关的操作(如添加新系、添加新班级、添加新专业、添加新课程等、学生注册、成绩录入);与数据输出有关的操作(如学生情况报表、学生成绩报表);与信息查询有关的操作(如系查询、班级查询、专业查询、课程查询、学生查询等);最后是帮助。2、给每个菜单一个有意义的菜单标题。第一个菜单笺命令名为【系统管理】,其中包括菜单项【操作员注册】、【添加操作员】、【删除操作员】、【退出】;第二个菜单笺命令名为【输入数据】,其中包括菜单项【添加新系】、【添加新班级】、【添加新专业】、【添加新课程】、【学生注册】、【成绩录入】;第三个菜单笺命名为【报表】,其中包括【学生情况报表】、【打印学生成绩】;第四个菜单笺命名为【查询】,其中包括【系查询】、【班级查询】、【专业查询】、【课程查询】、【学生查询】;第五个菜单笺命名为【帮助】,其中只包含【关于】菜单项。3、按照估计的菜单项使用频率、逻辑顺序或字母顺序组织菜单项。如果不能预计频率,也无法确定逻辑顺序,则可以按字母顺序组织菜单项。当菜单中包含有八个以上的菜单项时,按字母顺序特别有效。太多的菜单项需要用户花费一定的时间才能浏览一遍,而按字母顺序则便于查看菜单项。通常是将【系统管理】放在第一位,然后才是对数据的有关操作的菜单。可按【系统管理】、【数据输入】、【查询】、【报表】、【帮助】的次序设置菜单。4、放置分隔线:第一个菜单笺中在【退出】菜单项上设置一条,第二个菜单笺将【学生注册】、【成绩录入】菜单项与其它菜单项分开,第三个菜单笺不设分隔线,第四个菜单笺分成三个部分:【系查询】、【班级查询】为第一部分;专业查询】、【课程查询】为第二部分;【学生查询】为第三部分,第五个菜单笺不设分隔线。5、将菜单上菜单项的数目限制在一个屏幕之内。6、如果菜单项的数目超过了一屏,则应为其中的一些菜单项创建子菜单。7、为菜单项指定任务:8、为菜单和菜单项设置访问键或键盘快捷键。说明:【退出】习惯用Alt+E,【帮助】习惯用Alt+H、【关于】习惯用Alt+A作为访问键,其它可任意设定,但最好是使用Ctrl+或Alt+和能代表菜单项功能的某一个特殊的字母组合为快捷键,快捷键的定义在一个菜单中不要有重复。9、使用能够准确描述菜单项的文字。描述菜单项时,要使用日常用语而不要使用计算机术语。同时,说明选择一个菜单项产生的效果时,应使用简单、生动的动词,而不要将名词当作动词使用,另外,要用相似语句结构说明菜单项。10、在菜单项中混合使用大小写字母。返回9.1.3创建菜单规划好菜单系统之后,就可以使用菜单设计器创建该系统了。这时,可以创建菜单、快捷菜单、菜单项、子菜单和菜单项组之间的分隔线等等。1、创建菜单按前述方法打开“菜单设计器”。“菜单设计器”中选项说明:“菜单名称”:在菜单系统中指定菜单标题和菜单项的名称。“结果”:指定在选择菜单标题或菜单项时发生的动作。例如,可执行一个命令,打开一个子菜单或运行一个过程。“创建”:在“结果”项中选择“子菜单”或“过程”时,用于指定菜单标题或菜单项的子菜单或过程。“编辑”:在创建了“子菜单”或“过程”后,可以更改与菜单标题或菜单项相关的子菜单或过程。“选项”:显示“提示选项”对话框,可以在其中定义键盘快捷键和其它菜单选择。“菜单级”:弹出下拉菜单,让用户选择要处理的菜单或子菜单。“预览”:显示正在创建的菜单的预览结果。“插入”:在“菜单设计器”窗口中插入新的一行。“插入栏”:显示“插入系统菜单条”对话框,使用户可以插入标准的VFP菜单项。“删除”:从“菜单设计器”中删除当前菜单行。利用菜单设计器窗口各个选项就可以设计完整的菜单。1、创建Gxglxt菜单1、创建【系统】管理菜单笺系统管理(\S)创建【数据输入】菜单笺数据输入(\I)创建【报表】菜单笺报表(\R)创建【查询】菜单笺查询(\Q)创建【帮助】菜单笺帮助(\H)2、创建【系统管理】的子菜单:选择【系统管理】单击【创建】创建【操作员注册】菜单项操作员注册单击【选项】按钮设置快捷键在光标置于此栏后按下要定义的快捷键Ctrl+O单击【确定】“提示选项”对话框按相同的方法创建【添加操作员】、【删除操作员】、【退出】三个菜单项。在指定的菜单项(【删除操作员】与【退出】菜单项之间)中添加分隔线:选中下面的菜单项【退出】后单击【插入】按钮。删除“新菜单项”几个字后输入“\-”【系统管理】菜单笺定义后,单击“菜单级”下拉选择框,从中选择“菜单栏”。按创建子菜单的方法创建其他菜单笺下的菜单项(子菜单),过程略。3、为菜单项指定任务子菜单创建后,此处的“创建”将变为“编辑”。单击【编辑】单击“结果”下拉选择框,从中选择“命令”。在此框中输入该菜单项应执行的命令:DoFormForms\operator说明:表单按《上机指导》中的定义,使用同样的方法为另三个菜单项指定任务。【系统管理】菜单笺中各菜单项的任务指定完成后,单击“菜单级”下拉选择框,从中选择“菜单栏”。按相同的方法分别为【数据输入】、【报表】、【查询】、【帮助】的子菜单中各菜单项指定任务。菜单设计完成后,选择系统菜单上的【菜单】|【生成】,生成.MPR文件。生成gxglxt.mpr文件后,便可以在项目管理器中运行该文件:在项目管理器中选择“其他”选项卡,然后从“菜单”中选择“gxglxt”,再单击【运行】。运行的结果格式如下:各子菜单格式如下:最后的一项【项目】并不是我们所定义的共单笺。因为我们是在“项目管理器”中运行的gxglxt.mpr文件,项目管理器没有关闭才有【项目】这一项。如果在菜单运行后将“项目管理器”关闭,则这一项将会变为【格式】。在应用程序中将菜单连编后脱离VFP运行时,就不会有这一项。2、通过修改快速菜单得到自户自定义菜单若要从已有的VFP菜单系统开始创建菜单,则可以使用“快速菜单”功能。若要用“快速菜单”创建菜单系统,可以按下列步骤进行:打开“菜单设计器”,然后从系统菜单上的【菜单】中选择【快速菜单】。在“快速菜单”中通过【插入】、【删除】或修改得到所要求的菜单格式。例如,如果要在“帮助”菜单前插入“客户”菜单,可以选择与“帮助”菜单行,再选择“插入”按钮,然后在“菜单名称”栏中键入“客户”,其结果如图。移动按钮注意:拖动移动按钮可以改变菜单栏上各菜单的位置。如果需要“帮助”菜单,应将它安排在菜单栏上的最后,这样用户能够很快找到它。在应用程序中使用菜单之前,必须将它生成。3、创建快捷菜单在VFP6或者在Windows中,选定某个控件或对象后单击右键时,就会显示快捷菜单,可以快速展示对当前对象进行操作的各种可用的功能。正是因为这种菜单的方便快捷,它才被称为快捷菜单。可用VFP创建快捷菜单,并将这些菜单附加在控件中。若要创建快捷菜单。可从“项目管理器”中选择【其他】选项卡,选择“菜单”,并选定【新建】。接下来选择【快捷菜单】,则出现“快捷菜单设计器”。进入“快捷菜单设计器”后,添加菜单项的过程与创建菜单完全相同。例如,创建一个包含有二个选项【运行表单】和【关闭】的快捷菜单。浏览命令的代码是DOFORM?,在关闭菜单定义时,“结果”栏中选择“菜单项#”,在“结果”栏后的栏中输入“_mfi_close”,表示调用系统菜单中的“关闭”功能。创建完成后,将生成一个菜单名为Myquickmenu.mpr,其中Myquickmenu是自己命名的菜单文件名。所创建的菜单结果如图然后在系统菜单中选择【菜单】|【生成】,生成QuickMenu.mpr。最后在“属性示例”表单的RightClickEvent方法程序中添加下行代码:DoMenus\QuickMenu.mpr返回9.1.4在应用程序中包含菜单创建了菜单系统后,可将其包含在应用程序中。若要在应用程序中包含菜单,可将.mnx文件添加到项目中,并由项目建立应用程序。创建并生成了快捷菜单以后,就可将其附加到控件中。当用户在控件上单击鼠标右键时,显示典型的快捷菜单。在控件的Rig-htClick(单击鼠标右键)事件中输入少量代码,即可将快捷菜单附加到特定的控件中。先选择要附加快捷菜单的控件,然后在“属性”窗口中选择“方法程序”选项卡并选择“RightClickEvent”最后在代码窗口中键入Domenu.mpr,其中menu是快捷菜单的文件名。注意:引用快捷菜单时,必须使用.mpr扩展名。如在上一节中,在“属性示例”表单的RightClickEvent事件代码中添加代码DOMenus\Quickmenu.mpr。如果想将此快捷菜单应用于所有新创建的表单,则可以修改表单的类定义。步骤如下:(1)打开“项目管理器”并选择“类”选项卡。(2)选择【添加】,将C:\ProgramFiles\MicrosoftVisualStudio\Vfp98\Wizar-ds\Wizembss.vcx添加到“类”中。单击【确定】(3)单击Wizembss类前的“+”号,再选择Embossedform子类(4)选择“项目管理器”上的【修改】按钮,打开“类设计器”(5)选择“属性”对话框中的“方法程序”选项卡,再选定RightClickEvent事件。(6)双击RightClickEvent,打开方法程序代码编辑窗口,在该窗口中输入命令:DOMENUS\QUICKMENU.MPR(7)关闭“方法程序”编辑窗口,关闭“类设计器”窗口,将所做的修改保存到Embossedform子类中。说明:Embossedform子类是建立表单的类(Class),以后所建的表单均含有单击右键时调用Myquickmeun菜单的功能。若要将SDI菜单附加
本文标题:第9章VFP6菜单设计
链接地址:https://www.777doc.com/doc-2113287 .html