1 / 38

第八章 菜单设计与应用

第八章 菜单设计与应用 . 1. Visual FoxPro 系统菜单. 2. 菜单设计. 3. 快捷菜单设计. 目录. 8.1 Visual FoxPro 系统菜单 . 在 Windows 环境下,常见的菜单类型有两种:下拉式菜单和快捷菜单。 一、下拉式菜单 一般是由一个称作“主菜单”的条形菜单栏和一组称作“子菜单”的下拉式菜单组成。 条形菜单栏一般位于应用程序窗口的标题栏的下方,是一个启动应用程序后始终都可以看到的菜单名列表栏。菜单栏中的每个菜单名代表一个主菜单项,每一个主菜单项可以直接对应一个命令或过程。

jayden
Download Presentation

第八章 菜单设计与应用

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第八章 菜单设计与应用

  2. 1 Visual FoxPro系统菜单 2 菜单设计 3 快捷菜单设计 目录 Visual FoxPro程序设计

  3. 8.1Visual FoxPro系统菜单 • 在Windows环境下,常见的菜单类型有两种:下拉式菜单和快捷菜单。 • 一、下拉式菜单 • 一般是由一个称作“主菜单”的条形菜单栏和一组称作“子菜单”的下拉式菜单组成。 • 条形菜单栏一般位于应用程序窗口的标题栏的下方,是一个启动应用程序后始终都可以看到的菜单名列表栏。菜单栏中的每个菜单名代表一个主菜单项,每一个主菜单项可以直接对应一个命令或过程。 • 通常,每一个主菜单项对应有一个下拉菜单作为它的子菜单,子菜单中包含了一组菜单选项。子菜单中的每个菜单项可直接对应一条命令,也可对应于下一级子菜单,子菜单里又可以包含一组相关的菜单项,从而形成一种级联的菜单结构。 8.1.1 菜单结构 Visual FoxPro程序设计

  4. 8.1.1 菜单结构 • 在子菜单中,对功能上密切相关的菜单项可以放置分隔线划分菜单选项的组别。菜单项一般都有一个热键,用括号中带下划线的字母表示,同时按ALT键和带下划线的字母键即可下拉出所代表的菜单。快捷键通常是Ctrl键和另一个字符键组成的组合键,不论菜单是否激活,都可以通过快捷键选择相应的菜单项。如图8-1所示。 图8-1VFP系统菜单 Visual FoxPro程序设计

  5. 8.1.1 菜单结构 • 二、快捷菜单 • 当鼠标指针指向某个界面对象单击鼠标右键,通常会弹出一个快捷菜单,列出针对当前对象的各种可用命令,免除了在主菜单中一一查找的麻烦。快捷菜单一般只有一个弹出式菜单。菜单组中的每个菜单项可直接对应于一条命令,也可对应于一个级联子菜单。图8-2 是在VFP命令窗口右击时弹出的快捷菜单,其中列出了与命令窗口操作有关的命令项。 图8-2 快捷菜单 Visual FoxPro程序设计

  6. 8.1.2 系统菜单 • Visual FoxPro系统菜单是一个典型的菜单系统,其主菜单是一个条形菜单。选择条形菜单中的每一个菜单项都会弹出一个下拉菜单。 • 在Visual FoxPro中,每一个条形菜单都有一个内部名字和一组菜单选项,每个菜单选项都有一个名称(标题)和内部名字。例如,Visual FoxPro主菜单的内部名字为_MSYSMENU,条形菜单项“文件”、“编辑”和“窗口”的内部名字分别为_MSM_FILE,_MSM_EDIT,_MSM_WINDOW。 • 每一个弹出式菜单也有一个内部名字和一组菜单选项,每个菜单选项则有一个名称(标题)和选项序号。例如,_MFILE,_MEDIT,_MWINDOW为弹出式菜单项“文件”、“编辑”和“窗口”的内部名字。菜单项的名称用于在屏幕上显示菜单系统,而内部名字或选项序号则用于在程序代码中引用。 Visual FoxPro程序设计

  7. 8.1.2 系统菜单 • 通过SET SYSMENU命令可以允许或禁止在程序执行时访问系统菜单,也可以重新设置系统菜单。 • 命令格式: • SET SYSMENU ON|OFF|AUTOMATIC |TO [<弹出式菜单名表>]|TO [<条形菜单项名表>]|TO [DEFAULT]|SAVE|NOSAVE • 其中: • ON允许程序执行时访问系统菜单; • OFF禁止程序执行时访问系统菜单; • AUTOMATIC可使系统菜单显示出来,可以访问系统菜单; • TO子句用于重新设置系统菜单:“TO [<弹出式菜单名表>]”以菜单项内部名字列出可用的弹出式菜单,“TO [<条形菜单项名表>]”以条形菜单项内部名字列出可用的子菜单,“TO [DEFAULT]”将系统菜单恢复为缺省配置; • SAVE将当前系统菜单配置指定为缺省配置; • NOSAVE将缺省设置恢复成Visual FoxPro系统的标准配置。 Visual FoxPro程序设计

  8. 8.1.2 系统菜单 • 【例8-1】要求仅保留Visual FoxPro系统菜单的“文件”、“工具”、“窗口”和“格式“菜单,其他选项从系统菜单中移去。 • 在命令窗口输入以下命令并执行,执行后系统菜单显示效果如图8-3所示。 • 命令序列: • SET SYSMENU TO _MFILE,_MTOOLS,_MWINDOW,_MSM_TEXT 图8-3 设置后的菜单窗口 Visual FoxPro程序设计

  9. 8.1.2 系统菜单 • 【例8-2】将系统菜单恢复成标准菜单。 • 命令序列: • SET SYSMENU NOSAVE • SET SYSMENU TO DEFAULT • 逐条执行上述命令后,系统菜单将恢复成标准设置。 • 【例8-3】从“文件”菜单项的下拉菜单中移去“新建”和“打开”菜单项。 • 通过RELAEASE BAR命令可以从指定的菜单中移去指定的菜单项。 • 命令格式:RELEASE BAR <下拉菜单项名> OF <菜单项名> • 命令序列: • RELEASE BAR _MFI_NEW OF _MFILE • RELEASE BAR _MFI_OPEN OF _MFILE • 逐条执行上述命令后,“文件”菜单项的下拉菜单中移去了“新建”和“打开”两个菜单项。 Visual FoxPro程序设计

  10. 8.2菜单设计 • 开发一个应用程序通常都需要创建自己的菜单系统。不管应用程序的规模多大,打算使用的菜单多么复杂,创建菜单系统都需要以下步骤: • 第1步:规划与设计系统:确定需要哪些菜单、出现在界面的何处以及哪几个菜单要有子菜单等等。 • 第2步:创建菜单和子菜单:使用菜单设计器可以定义菜单标题、菜单项和子菜单。 • 第3步:按实际要求为菜单系统指定任务:指定菜单所要执行的任务,例如显示表单或对话框等。另外,如果需要,还可以包含初始化代码和清理代码。初始化代码在定义菜单系统之前执行,其中可以打开文件;声明变量;或将菜单系统保存到堆栈中,以便可以在后面的程序执行中恢复。清理代码中包含的代码在菜单的定义代码之后执行,使菜单和菜单项可用或不可用。 • 第4步:生成菜单程序。 • 第5步:运行生成的程序,测试菜单系统。 Visual FoxPro程序设计

  11. 8.2.1 菜单设计器 • 要创建用户的菜单系统,可以使用菜单设计器。 • 进入菜单设计器的方法有多种,最简单的方法是:从“文件”菜单中,选择“新建”菜单项,得到新建对话框,选中“菜单”单选按钮,单击“新建文件”按钮进入菜单设计器窗口,如图8-5所示。 图8-5 “菜单设计器”对话框 Visual FoxPro程序设计

  12. 8.2.1 菜单设计器 • 菜单设计器窗口主要由以下几部分组成: • (1)菜单名称 • 该列用于指定各菜单项的标题名称及菜单项的访问键。例如:定义一个标题名为“文件”的菜单项,并设置其访问键为F键,可在菜单名栏中输入“文件(\<F)”。 • 要用分隔线功能将相关的菜单项分别成线,在“菜单名称”栏中键入“\-”,便可创建一条分隔线。 • 此外,在每个菜单项的前面有一个小方块按钮,当鼠标移动到它的上面时形状会变成上下双箭头的样子。这个按钮是标准的移动指示器,用鼠标上下拖动它可以改变当前菜单项在菜单列表中的位置。 Visual FoxPro程序设计

  13. 8.2.1 菜单设计器 • (2)结果 • 该列用于指定激活菜单项时的动作,有以下4个选项: • ①子菜单:如果用户所定义的当前菜单项还有子菜单的话应选择这一项。当选中该项后,在其右侧将出现一“创建”按钮,单击“创建”按钮后将进入新的一屏来设计子菜单。 • ②命令:如果当前菜单项的功能是执行某种动作的话应选择这一项。当选中该项后,在其右侧出现一文本框,在这个文本框中输入要执行的命令。这个选项仅对应于执行一条命令或调用其他程序的情况。如果所要执行的动作需多条命令完成,而又无相应的程序可用,那么在这里应该选择“过程”。 • ③主菜单名/菜单项#:主菜单名项出现在定义主菜单时,菜单项#出现在定义子菜单项时。当选中这一项时,在其右侧出现一文本框,用户可在文本框输入一个名字。选择这一项的目的主要是为了在程序中引用它。例如,利用它来设计动态菜单。如果用户不选择这一项,系统也会为各个主菜单和子菜单指定一个名称的,只是用户不知道而已。 • ④过程:用于定义一个与菜单相关联的过程,当用户选择了该菜单项后将执行这个过程。如果选择了这项,在其右侧将出现一“创建”按钮,按下该按钮将调出编辑窗口供输入过程代码。 Visual FoxPro程序设计

  14. 8.2.1 菜单设计器 • (3)选项 • 单击该按钮将弹出“提示选项”对话框,如图8-6所示。 • 通过提示选项对话框用户可以设置菜单中的各菜单项的属性。比如定义菜单项的快捷键,控制如何禁止或允许使用菜单项,选中的菜单项时在系统状态条上是否显示对菜单项的说明信息,指定菜单项的名字以及在编辑OLE对象期间控制菜单项的位置等。该对话框主要有以下选项: 图8-6 “提示选项”对话框 Visual FoxPro程序设计

  15. 8.2.1 菜单设计器 • ①“快捷方式”选项区域:该区用于指定菜单或菜单项的快捷键。其中“键标签”文本框用于显示键组合。设置快捷键的方法是:将光标置于“键标签”文本框中,然后在键盘上按下快捷键,文本框中便会自动显示该快捷键名称。例如按下Crtl+R键,文本框中就出现Crtl+R键。“键说明”用于显示需要出现在菜单项旁边的文本,用作对快捷键的说明,文本框中的内容通常与用户设置的快捷键名称相同。 • ②“位置”选项区域:在该区域可指定用户在应用程序中编辑一个OLE对象时菜单项的位置。有“无”、“左”“中”“右”多个选项。 • ③“跳过”编辑框:设置一个表达式作为允许或禁止菜单项的条件。当菜单激活时,若表为真,则菜单项以灰色显示,表示当前不可用。 • ④“信息”编辑框:定义菜单项的说明信息。当选中了该菜单项后,这些信息将出现在VFP的系统状态条上。 • ⑤“主菜单名/菜单项#”编辑框:指定主菜单项的内部名称或子菜单项的序号。默认情况下,各菜单项无固定的名称,系统在生成菜单时将给出一个随机的名称或序号。 • ⑥“备注”编辑框:在这里输入对菜单项的注释。不过这里的注释不会影响到生成的菜单程序代码,在运行菜单程序时VFP将忽略所有的注释。 Visual FoxPro程序设计

  16. 8.2.1 菜单设计器 • (4)“菜单级”下拉列表 • 这个弹出列表显示当前所处的菜单级别。当菜单的层次较多时利用这一项可知道当前的位置。从子菜单返回上面任意一级菜单也要使用这一项。 • (5)“预览”按钮 • 使用这个按钮可以预览当前定义的菜单,该菜单出现在原来系统菜单的地方。可在所显示的菜单中进行选择,检查菜单的层次关系及提示等是否正确,但是这种选择不会执行各菜单相应动作。 • (6)“插入” • 单击该按钮可以在当前菜单的前面插入一新的菜单项。 • (7)“插入栏”按钮 • 进行菜单设计器界面后,该按钮被激活,用于插入一个VFP系统菜单项。单击此按钮,打开“插入系统菜单条”对话框,其中列出了各种VFP系统菜单命令。 • (8)“删除“按钮 • 删除当前的菜单项。 Visual FoxPro程序设计

  17. 8.2.1 菜单设计器 • 要提醒用户注意的是,在菜单设计器环境下,系统的“显示”菜单中增加了与菜单有关的两个选项。 • (1)常规选项 • 选择该菜单项将打开“常规选项”对话框,如图8-8所示。该对话框用于为整个菜单系统指定代码。它主要由“过程”、“编辑”、“位置”、“菜单代码”和“顶层表单”组成。 • (2)菜单项 • 当用户选择“显示”菜单中的“菜单选项”命令时,将出现如图8-9所示“菜单选项”对话框。该对话框用于为菜单栏或各子菜单输入代码,它包括“名称”标签、“过程”编辑框和“编辑”按钮。 图8-8 “常规选项”对话框 图8-9 “菜单选项”对话框 Visual FoxPro程序设计

  18. 8.2.2 定义菜单 • 本节将通过一个具体的实例说明自定义菜单的方法和过程。 • 【例8-4】为学生成绩管理系统设计一个菜单系统。主菜单包含有“数据维护”、“数据查询”、“报表打印”、 “系统帮助” 和“退出”5个菜单项,且各菜单项分别带有下拉子菜单。 表8-1 菜单项的设置 Visual FoxPro程序设计

  19. 8.2.2 定义菜单 • 操作步骤: • 1.规划菜单系统 • 菜单项的设置如表8-1所示。 • 2.单击“文件”菜单下的“新建”按钮,在弹出来的对话框中选中“菜单”,然后选择“新建文件”,打开菜单设计器。定义主菜单,如图8-10所示。 图8-10 定义主菜单 Visual FoxPro程序设计

  20. 8.2.2 定义菜单 • 3.定义好主菜单后,定义各个子菜单。单击“数据维护”菜单项中的“创建”选项,进入子菜单定义界面,定义“数据维护”子菜单,如图8-11所示。 图8-11 “数据维护”子菜单 Visual FoxPro程序设计

  21. 8.2.2 定义菜单 • 4.从“菜单级”列表框中选择“菜单栏”选项,返回到主菜单定义界面,并按同样的方法分别定义另外“数据查询”和“报表打印”2个子菜单,如图8-12、图8-13所示。 图8-12 “数据查询”子菜单 图8-13 “报表打印”子菜单 Visual FoxPro程序设计

  22. 8.2.2 定义菜单 • 5.在“系统帮助”菜单项的命令框中输入命令“do form 帮助.scx”。当执行该菜单项时可以打开帮助表单。 • 6.在“退出”菜单项中,单击“退出”过程中的“编辑”选项,并在其中输入程序代码,如图8-14所示。 图8-14 “退出”过程 Visual FoxPro程序设计

  23. 8.2.2 定义菜单 • 7.单击“预览”按钮可预览设计好的菜单效果,如图8-15所示。 • 8.选择菜单“文件->保存”,弹出“另存为”对话框,将菜单保存为“主菜单.MNX”,以便以后修改。系统除创建一个扩展名为MNX的菜单文件外,还会自动创建一个同名的菜单备注文件(MNT)。 图8-15 “学生成绩管理”系统菜单 Visual FoxPro程序设计

  24. 8.2.2 定义菜单 • 9.选择主菜单“菜单->生成”,弹出“生成菜单”对话框,如图8-16所示。在“输出文件”文本框中显示出系统设定的路径、文件夹和文件名,文件名默认与菜单格式文件名相同。如果要放在别的文件夹或重新命名,可以直接在文本框中修改,也可以单击文本框右端按钮打开“另存为”对话框,指定新的路径。最后单击“生成”按钮,系统会自动生成菜单程序,菜单程序文件的扩展名为MPR。 图8-16生成菜单程序 Visual FoxPro程序设计

  25. 8.2.2 定义菜单 • 10.选择主菜单“程序->运行”,会弹出图8-17所示对话框,选中要运行的菜单程序“主菜单.MPR”,单击“运行”按钮,系统菜单将换成用户菜单,如图8-18所示。 • 11.在命令窗口输入命令:set sysmenu to default,可以结束用户菜单运行,重新显示系统主菜单。如果用户菜单设置了“退出”菜单,也可以单击“退出”来结束用户菜单的运行。 图8-18 用户菜单 图8-17 “运行”对话框 Visual FoxPro程序设计

  26. 8.2.3 为顶层表单添加菜单 • 一般情况下,使用菜单设计器设计的菜单,运行在Visual FoxPro的图文框中,也就是说,用户菜单不是在窗口的顶层,而是在第二层,因为Visual FoxPro标题一直被显示。如何去掉该标题,而换成用户指定的标题,可以通过顶层菜单设计来实现。其基本思想是: • 第1步:在菜单设计器设计好菜单,然后VFP系统菜单中选择“显示”下的“常规选项”菜单项,在“常规选项”对话框中选中“顶层表单”复选框,生成菜单程序。 • 第2步:创建一个表单,该表单只设置标题为用户指定的标题,然后在Init方法中添加如下代码: • DO 菜单程序名 WITH THIS, .T. • 第3步:将表单的ShowWindow属性设置为2,使其成为“顶层表单”。 Visual FoxPro程序设计

  27. 8.2.3 为顶层表单添加菜单 • 【例8-5】将案例8-4设计的自定义菜单添加到顶层表单中。 • 操作步骤: • 1.打开“主菜单.MNX”,进行菜单设计器。 • 2.选择“显示”下的“常规选项”命令,在“常规选项”对话框中选中“顶层表单”复选框。 • 3.单击常用工具栏上的“保存“按钮,保存修改后的自定义菜单;然后选择“菜单”下的“生成”菜单项,重新生成新的菜单文件“主菜单.MPR”。 • 4.选择“文件”下的“新建”命令,在“新建”对话框中选择“表单”文件类型。单击“新建文件”按钮,打开表单设计器,表单属性设置如表8-2所示。 表8-2 表单属性设置 Visual FoxPro程序设计

  28. 8.2.3 为顶层表单添加菜单 • 5.为表单的Init事件过程添加如下代码: • Do 主菜单.MPR WITH THIS,.T. • 6.保存表单,并运行,运行效果如图8-19所示。 图8-19 顶层表单中的菜单 Visual FoxPro程序设计

  29. 8.3 快捷菜单设计 • 当鼠标在窗口的某个对象上右击,将显示一快捷菜单,快捷菜单通常列出与相应对象有关的功能命令。与下拉菜单相比较,快捷菜单没有条形菜单栏,只有一个弹出式菜单。因此,对于快捷菜单仅需设计菜单项及其子菜单。 • 利用菜单设计器可以创建快捷菜单,并可以将这些菜单附加在控件上。 • 创建快捷菜单的具体步骤是: • 1、选择项目管理器中的“其他”选项卡,选定“菜单”选项,并单击“新建”按钮。在“新建菜单”对话框中单击“快捷菜单”按钮,打开“快捷菜单设计器”对话框。 • 2、在“快捷菜单设计器”中添加菜单项,其过程与创建下拉菜单完全相同,即在“菜单名称”框中指定相应的菜单标题,在“结果”框中选择菜单激活后的动作并编写相应的命令或过程代码。单击“选项”栏中的按钮后,在“提示选项”对话框中设置快捷键等。 • 3、预览快捷菜单。 • 4、选择“文件”下的“另存为”命令,保存快捷菜单的定义文件(.MNX)。 Visual FoxPro程序设计

  30. 8.3 快捷菜单设计 • 5、选择“菜单”下的“生成”命令,生成相应的菜单程序文件(.MPR)。 • 要使用创建的快捷菜单,可以在表单设计器环境下选定需要调用快捷菜单的对象,在该对象的RightClick事件过程中添加调用快捷菜单程序的代码: • Do <快捷菜单程序文件名> • 【例8-6】为表单的一个标签控件建立快捷菜单,其结构如图8-20所示。 • 快捷菜单中包含了3个菜单项:字体、大小、颜色,它们分别带有下级子菜单,选择不同的的字体、大小、颜色时,标签标题随之发生相应的改变。 图8-20 在表单中调用快捷菜单 Visual FoxPro程序设计

  31. 8.3 快捷菜单设计 • 操作步骤如下: • 1.选择“文件”菜单下的“新建”命令,从“新建”对话框中选择“菜单”文件类型,在“新建菜单”对话框中单击“快捷菜单”按钮,打开“快捷菜单设计器”对话框。 • 2.定义快捷菜单各选项的名称,如表8-3所示。 图8-21 “新建菜单”对话框 Visual FoxPro程序设计

  32. 8.3 快捷菜单设计 • 3.在“菜单级”列表框中选择“快捷菜单”项,回到顶层菜单。选择“字体”菜单项,单击“编辑”按钮,重新进入“字体”子菜单,如图8-22所示。选择“显示”菜单下的“菜单选项”命令,打开“菜单选项”对话框,单击“编辑”按钮,再单击“确定”按钮,进入代码编辑窗口,为“字体”编写通用过程,如图8-23所示。编写完后关闭编辑窗口,返回菜单设计器。 图8-22“字体”子菜单 图8-23 “菜单选项”对话框 Visual FoxPro程序设计

  33. 8.3 快捷菜单设计 • 子菜单“字体”通用过程代码: • DO CASE • CASE BAR()=1 • Ft=“宋体” &&选择的菜单项的序号 • CASE BAR()=2 • Ft=“楷体-GB2312” • CASE BAR()=3 • Ft=“黑体” • CASE BAR()=4 • Ft=“隶书” • ENDCASE • _VFP.ActiveForm.Label1.FontName=ft 图8-24 “大小”子菜单 • 4.在“菜单级”列表框中选择“快捷菜单”项,回到顶层菜单。选择“大小”菜单项,单击“编辑”按钮进入“大小”子菜单,如图8-24,在各个子菜单的命令框中输入相应的代码,内容如表8-3所示。 Visual FoxPro程序设计

  34. 8.3 快捷菜单设计 • 5.在“菜单级”列表框中选择“快捷菜单”项,回到顶层菜单。选择“颜色”菜单项,单击“编辑”按钮,重新进入“颜色”子菜单,如图8-25所示。按同样的方法,为“颜色”子菜单中的各菜单项写通用过程,代码如表8-3所示。关闭编辑窗口,返回菜单设计器。 • 子菜单“颜色”通用过程代码: • DO CASE • CASE BAR ()=1 • c1=RGB(0,0,0) &&函数RGB()返回一种由给定的红、绿、蓝颜色合成的颜色 • CASE BAR ()=2 • c1=RGB(255,255,0) • CASE BAR ()=3 • c1=RGB(255,0,0) • CASE BAR ()=4 • c1=RGB(0,0,255) • ENDCASE • _VFP.ActiveForm.Label1.ForeColor=c1 图8-25 定义“颜色”子菜单 Visual FoxPro程序设计

  35. 8.3 快捷菜单设计 • 6.单击“预览”按钮,预览快捷菜单。 • 7.选择“文件”菜单下的“另存为”命令,保存创建的快捷菜单,输入文件名“快捷菜单.MNR”。 • 8.选择“菜单”下的“生成”命令,生成相应的菜单程序文件“快捷菜单.MPR”。 • 9.选择“文件”菜单下的“新建”命令,在“新建”对话框中选择“表单”文件类型。新建一个表单,表单属性设置如表8-4所示。 表8-4 表单属性设置 Visual FoxPro程序设计

  36. 8.3 快捷菜单设计 • 10.在表单添加一个标签控件,标签属性设置如表8-5所示。 • 属性名称属性值AutoSize.T.BackStyle0-透明Caption欢迎进入学生成绩管理系统双击标签控件,打开代码编辑窗口,为标签的RightClick事件过程添加如下代码: • Do菜单1.MPR • 11.选择“文件”下的“另存为”命令,保存表单文件。 • 12.运行表单文件,当右击标签对象,会弹出如图8-20所示快捷菜单。选择不同的菜单项可使标题文字作出相应的变化。 表8-5 标签属性设置 Visual FoxPro程序设计

  37. 本章小结 • 本章介绍了在VFP环境下两种菜单的创建和应用。一个良好的数据库应用系统程序中,菜单起着组织、协调全部数据库对象的关键作用,一个良好的菜单系统会给用户一个友好的操作界面,并会带来操作上的便利。对数据库应用系统进行操作时,菜单程序尤为重要。 Visual FoxPro程序设计

  38. Thank You

More Related