2010-5-21 1
第 10 章
菜单设计与应用
目录 上一页 下一页 退出2010-5-21 2
本 章 目 录
第一节 Visual FoxPro菜单系统
第二节 菜单设计器
第三节 创建菜单 第
四节 用快速菜单创建菜单
第五节 创建快捷菜单 第六
节 修饰菜单设计 第七
节 工具栏
目录 上一页 下一页 退出2010-5-21 3
一、菜单的组成
菜单系统由一个菜单栏、多个菜单、菜单项和下拉菜
单所组成。菜单是包含命令、过程和子菜单的选项列
表。因此菜单按等级可分为父菜单和子菜单,子菜单
作为父菜单的一个菜单项。如图 10-1所示。
窗口标题 菜单栏 菜单项 热键 下拉菜单 不可选项 分隔线 一级子菜单
图 10 - 1 Visual FoxPro6.0 系统菜单窗口
第一节 Visual FoxPro菜单系统
目录 上一页 下一页 退出2010-5-21 4
要为一个应用程序创建一套菜单系统, 通常按照以下步骤进行:
1,规划与设计菜单系统
2,创建菜单和子菜单
3,菜单系统指定任务
4,生成菜单程序
菜单与表单不同,它不能直接在设计器中生成程序代码。而
必须专门生成菜单程序代码。在设计器中所做的一切将被保存在
一个带,MNX扩展名的文件中,在这个文件中保存了有关菜单系
统的所有信息,它实际上就是一个表文件。从“菜单”菜单上选
择“生成”命令,生成的菜单程序,扩展名为 MPR。
5,运行及测试菜单系统
二,菜单系统的设计
目录 上一页 下一页 退出2010-5-21 5
三、系统菜单的控制
Visual FoxPro6.0系统菜单是一个典型的菜单系统,
它的主菜单是一个条形菜单,其内部名字为 _MSYSMENU。
每一个菜单项和所激活的弹出式菜单均有一个内部名。
1.重新设置系统菜单。
命令格式是:
SET SYSMENU ON | OFF | AUTOMATIC | TO[<弹出式菜单
名表 >] | TO[<条形菜单项名表 >] | TO [DEFAULT] |
SAVE | NOSAVE
其中各子句的含义是:
ON 允许程序执行时访问系统菜单,OFF禁止访问,
AUTOMATIC访问系统菜单时使系统菜单显示。
目录 上一页 下一页 退出2010-5-21 6
TO[<弹出式菜单名表 >]:以菜单项内部名字列出可用的弹
出式菜单。
TO[<条形菜单项名表 >]:以条形菜单项内部名字列出可用
的子菜单。
TO[DEFAULT]:将系统菜单恢复成缺省配置。
SAVE:将当前系统菜单配置指定为缺省配置。
NOSAVE:将缺省设置恢复成 VFP系统的标准配置。
【例 10-1】 要求仅保留 Visual FoxPro系统菜单的, 文件,
( File),“编辑, ( Edit) 和, 工具, (Tools)菜单,
其 它选项都从系统菜单中移去。
执行命令,SET SYSMENU TO _MFILE,_MEDIT,_MTOOLS
命令执行后,系统菜单显示效果如图 10-2右图所示。
目录 上一页 下一页 退出2010-5-21 7
图 10 - 2 将标准系统菜单设置为新的系统菜单窗口
目录 上一页 下一页 退出2010-5-21 8
【 例 10-2】 将系统菜单恢复成标准菜单 。
先执行命令,SET SYSMENU NOSAVE
后执行命令,SET SYSMENU TO DEFAULT
执行上述命令后, 将例 10-1的系统菜单恢复成标准设置 。
注意,不带参数的 SET SYSMENU TO命令将屏蔽系统菜单。
2.从指定的下拉菜单中移去指定的菜单项
命令格式:
RELEASE BAR <下拉菜单项名 > OF <菜单项名 >
【 例 10-3】 从, 编辑, 菜单项的下拉菜单中移去, 复制,
和, 粘贴, 菜单项
执行命令:
RELEASE BAR _MED_COPY OF _MEDIT
RELEASE BAR _MED_PASTE OF _MEDIT
目录 上一页 下一页 退出2010-5-21 9
3,Visual FoxPro 系统菜单的名称和内部名
菜单名称 内部名称 菜单名称 内部名称
文件 (File) _MSM _ FILE 工具 (Tools) _MSM _ TOOLS
编辑 (Edit) _MSM _ EDIT 程序 (Program) _MSM _ PROG
显示 (Da ta S es si on ) _MS M _ VIEW 窗口 (Window) _MSM _ WINDO
格式 (Format) _MSM _ TEXT 帮助 (Help) _MSM _ SYSTM
表 10-1 系统主菜单的名称及其内部名称
目录 上一页 下一页 退出2010-5-21 10
四、创建菜单系统的步骤
1,规划系统 。 确定需要哪些菜单, 出现在界面何处,
以及哪几个菜单要有子菜单等 。
2,利用设计器创建菜单及子菜单 。
3,指定菜单所要执行的任务 。 例如显示表单或对话框
等 。 菜单建立好之后将生成一个以,mnx为扩展名的
菜单文件和以,mnt为扩展名的菜单备注文件 。
4,选择, 预览, 按钮预览整个菜单系统 。
5,从, 菜单, 项的下拉菜单中选择, 生成, 命令, 生成
菜 单程序以及运行菜单程序, 对菜单系统进行测试 。
6,从, 程序, 菜单中选择, 执行, 命令, 然后指定已生
成 的扩展名为,mpr的菜单程序文件 。
目录 上一页 下一页 退出2010-5-21 11
第二节 菜单设计器
一、菜单设计器
可利用如下几种方法打开菜单设计器:
1,从工具栏中单击, 新建, 按钮, 从文件类型列表中选
择, 菜单,, 然后单击, 新建文件, 按钮 。 在弹出的
,新建菜单, 对话框中选择, 菜单,, 则出现菜单设
计器窗口画面, 如图 10-3,10-4所示 。
2,通过, 文件, 菜单, 选择, 新建, 命令, 然后按 1的
步骤进行 。
3,通过项目管理器, 选取, 其它, 选项卡, 选择, 菜
单,, 然后单击, 新建, 按钮 。
4,通过命令方式打开菜单设计器建立或打开菜单 。
CREATE MENU〈 菜单文件名〉
或 MODIFY MENU<菜单文件名 >
目录 上一页 下一页 退出2010-5-21 12
图 10-4 菜单设计器窗口
移动按钮
图 10-3, 新建菜单, 对话
框
目录 上一页 下一页 退出2010-5-21 13
二、如何使用菜单设计器
1.菜单名称列,用来输入菜单项的名称 。 菜单项可定义
热键, 其方法是在热键的字符前加上, \<” 两个字符 。
2.结果列,用于菜单项的操作。单击该列弹出下拉列表
框,有命令、填充名称、子菜单和过程选项。
3.选项列,用于定义菜单项的附加属性。单击该列无符
号按钮,出现, 提示选项, 对话框供用户定义菜单项
的附加属性。
4,菜单级组合框,用于从下级菜单页切换到上级菜单页。
5.插入按钮,用于在当前菜单项行之前插入一个新的菜
单项行。
6.预览,显示所创建的菜单。一旦启动了菜单设计器,
Visual FoxPro的系统菜单会多出一项,菜单”,该菜
单中集成了与菜单设计相关的菜单项。
目录 上一页 下一页 退出2010-5-21 14
7.删除按钮,用于删除当前的菜单项行 。
8.预览按钮,用于预览菜单效果 。
9.移动按钮,用于拖动菜单项左侧的移动按钮,改变菜单
项的先后位置。
10.插入栏按钮,提供与系统菜单一样的菜单项作为用户菜
单的命令。单击, 插入栏, 按钮,弹出, 插入系统菜单栏,
对 话框。如图 10-5所示。
图 10-5, 插入系统菜单栏, 对话框
目录 上一页 下一页 退出2010-5-21 15
三、常规选项与菜单选项
菜单设计器窗口打开后,VFP“显示, 菜单项的下拉菜单
中将包含, 常规选项, 和, 菜单选项, 两个命令,它们
与菜单设计器窗口相结合,可使菜单设计更加完善。
1., 常规选项, 对话框
在, 显示, 菜单中单击, 常规选项, 命令,出现, 常规
选项, 对话框,如图 10-6所示。该对话框可以定义整个
下拉式菜单的总体属性。
“常规选项”是针对整个菜单的,它的主要作用:
其一,为整个菜单指定一个过程。
其二,可以确定用户菜单与系统菜单之间的位置关系。
其三,为菜单增加一个初始化过程和清理过程。
目录 上一页 下一页 退出2010-5-21 16
2., 菜单选项, 对话框
在, 显示, 菜单中单击, 菜单选项, 命令,出现, 菜单
选项, 对话框。该对话框中有一个过程编辑框,可供用
户为当前弹出式菜单写入公共的过程代码和 修改菜单项
的名称,如图 10-7所示。
图 10-6, 常规选项, 对话框 图 10-7, 菜单选项, 对
话框
目录 上一页 下一页 退出2010-5-21 17
第三节 创建菜单
创建菜单, 菜单项和子菜单方法和步骤
【 例 10-4】 利用菜单设计器建立一个图书管理系统菜
单 (system.mpr),其条形菜单的菜单项如图 10-8所示 。 其
中文件操作, 数据录入, 信息查询, 编辑修改等菜单项
均有下拉菜单, 在信息查询下拉菜单中还包含有子菜单 。
图 10-8 图书管理系统菜单
目录 上一页 下一页 退出2010-5-21 18
条形菜单、各下拉菜单及子菜单创建操作步骤如下:
1.打开菜单设计器窗口。
2.在, 菜单名称, 列中,输入条形菜单中各菜单项名称
并指定热键。在, 结果, 列中选定, 子菜单,,右侧
出现, 创建, 按钮,点击该按钮创建下拉菜单;在
,结果, 列中选定, 命令, 选项,在, 命令, 的右边
输入菜单项执行的命令。如图 10-9所示。
图 10-9 设置条形菜单的菜单项
目录 上一页 下一页 退出2010-5-21 19
3.创建, 信息查询, 菜单项的下拉菜单和下拉菜单中
,综合信息, 菜单项的子菜单。如图 10-10所示。
图 10-10, 信息查询, 菜单项的下拉菜单设
置
目录 上一页 下一页 退出2010-5-21 20
4.设置, 文件操作, 菜单项的下拉菜单。选定, 文件操
作, 所在行,单击, 创建,,选取, 插入栏 …, 按钮,
弹出如图 10-4所示的, 插入系统菜单栏, 对话框,从中
选取所需的 Visaul FoxPro菜单项,如图 10-11所示。
图 10-11, 文件操作, 菜单项的下拉菜单设
置
目录 上一页 下一页 退出2010-5-21 21
5.设计菜单组的分隔线。对, 文件操作, 下拉菜单中的菜单项
,关闭, 和, 另存为, 命令项的下面添加分隔线,可在, 关
闭, 菜单项和, 另存为, 菜单项的下一行的, 菜单名称, 栏
中,键入, \—” 即可。如图 10-8所示。
6.增加快捷键。如对, 编辑修改, 菜单项增加快捷键。在
,菜单名称, 栏中选定, 编辑修改, 菜单项,选择该行上的
,选项, 按钮,弹出如图 10-12所示的, 提示选项, 对话框,
在对话框中的, 键标签, 框中按下组合键 CTRL+E,则在键
标签和键说明中会出现所按下的快捷键。
重复上述操作,可以为所有的菜单项定义快捷键。
7.编写过程。如, 退出系统, 菜单项编写过程,在, 菜单名
称, 栏中选定, 退出系统, 菜单项,在, 结果, 列中选取
,过程,,单击, 创建,,在弹出的文本编辑窗口中输入以
下代码:
SET SYSMENU NOSAVE
SET SYSMENU TO DEFAULT
目录 上一页 下一页 退出2010-5-21 22
8.保存菜单。从, 菜单级, 列表框中选择, 菜单栏,,返回
主菜单。单击文件下拉菜单的保存选项或单击工具栏中的保
存按钮,然后在弹出的保存文件对话框中,输入要保存的路
径和文件名,如,d:\system.mnx。
9.生成菜单程序。单击, 菜单, 项,从弹出的下拉菜单中选
取, 生成, 命令,在, 输出文件, 文本框中输
入,d:\system.mpr,单击, 生成, 按钮,则生成菜单程序
文件,system.mpr。
10.运行菜单程序,do system.mpr
图 10-12, 提示选项, 对话
框
目录 上一页 下一页 退出2010-5-21 23
1,进入菜单设计器。
2,在, 菜单, 项的下拉菜单中选择, 快速菜单, 命令,
则一个 Visual FoxPro系统菜单自动加载到菜单设计器
中,如图 10-13所示。
第四节 用快速菜单创建菜单
图 10-13 建立快速菜单后的菜单设计器窗口
目录 上一页 下一页 退出2010-5-21 24
3,将菜单设计器的第一行置为当前行。单击, 编辑, 按钮
可使, 菜单设计器, 进入子菜单进行编辑。
说明:
(1) 快速生成的菜单和系统菜单相同, 其中的功能项可以
在菜单设计器中进行增加, 修改或删除 。
(2) 快速菜单只有在菜单设计器窗口为空时才允许选择,
否则它是浅色的 。
(3) 快速菜单仅用于产生下拉式菜单。若需改变菜单栏上
各菜单项位置,则通过拖动移动钮实现。
目录 上一页 下一页 退出2010-5-21 25
第五节 创建快捷菜单
利用, 快捷菜单设计器, 仅能生成快捷菜单的菜单本
身,实现单击右键来弹出一个菜单的动作还需要编程。
【 例 10-5】 建立一个具有撤消, 剪切, 复制, 粘贴等功
能的快捷菜单 (autcp.mpr), 供浏览读者表时使用 。 当
用户在浏览窗口单击鼠标右键时, 即出现此快捷菜单 。
操作步骤如下:
( 1)打开快捷菜单设计器窗口。
单击工具栏中的, 新建, 按钮,打开, 新建, 对话框,
选择, 菜单, 按钮,再单击, 新建文件, 按钮,在屏
幕出现的, 新建菜单, 对话框中选择, 快捷菜单, 按
钮,进入快捷菜单设计器。
目录 上一页 下一页 退出2010-5-21 26
(2) 插入系统菜单栏 。
在快捷菜单设计器窗口中,选择, 插入栏, 按钮,在
出现的, 插入系统菜单栏, 对话框中选择, 粘贴, 选
项,再单击, 插入, 按钮,则, 粘贴, 作为菜单项出
现在快捷菜单中。同样在快捷菜单中可插入, 复制,,
,剪切,,, 撤消,,, 清除, 等选项,最后单击
,关闭, 按钮 。
( 3) 生成菜单程序 。
打开, 菜单, 菜单项的下拉菜单,选择, 生成, 命令,
在, 保存菜单为, 输入框中输入 autcp.mpr文件名,单
击, 保存, 按钮,在, 生成菜单, 对话框中选择, 生
成, 按钮,就会生成菜单程序 autcp.mpr 。
(4) 编写调用程序 。
命令方式,MODI COMM dyautcp
按回车键后出现程序编辑窗口。
目录 上一页 下一页 退出2010-5-21 27
CLEAR ALL
PUSH KEY CLEAR && 清除以前设置过的功能键
ON KEY LABEL RIGHTMOUSE DO autcp.mpr
&&单击鼠标右键执行快捷菜单
USE 读者
BROWSE
USE
PUSH KEY CLEAR
关闭程序编辑窗口,并以 dyautcp文件名进行保存。
(5) 运行调用程序及快捷菜单程序。
命令方式,DO dyautcp
浏览窗口出现在屏幕上以后,当选择任何数据单击右键
时,随即弹出快捷菜单,如图 10-14所示。
目录 上一页 下一页 退出2010-5-21 28
图 10-14 快捷菜单在浏览窗口中的使用
目录 上一页 下一页 退出2010-5-21 29
【 例 10-6】 运用例 10-5创建的快捷菜单 autcp.mpr,设计
一个编辑器表单 (editform.scx),使对编辑器中输入
的文本可以进行清除, 撤消, 剪切, 复制和粘贴等操
作 。 操作步骤如下:
1.进入表单设计器,从表单控件工具栏单击 编辑 控件 按
钮,拖至表单添加一个编辑框。
2.在属性对话框中,将表单 Caption属性设置为“编辑
器”,双击编辑框的 RightClickEvent属性。
3.在弹出的 RightClickEvent属性代码编辑框中编写方
法程序。如图 10-15所示。
DO AUTCP.MPR
&& 当单击鼠标右键时执行快捷菜单 autcp.mpr
4.保存、运行表单以及测试快捷菜单。
目录 上一页 下一页 退出2010-5-21 30
5.运行创建的表单,在表单的编辑器内输入文本,单击
鼠标右键弹出快捷菜单,则此时可对选中的文本进行清
除、撤消、剪切、复制和粘贴等操作,如图 10-16所示。
图 10-16 在编辑器中使用快捷菜单
图 10-15 为单击按钮编写方法程序
目录 上一页 下一页 退出2010-5-21 31
第六节 修饰菜单设计
运用菜单设计器设计完菜单后,窗口的标题是
,Microsoft Visual FoxPro”,这是系统窗口的默
认标题,运用顶层表单的设计方法,可以将此标题改
为其它的标题。方法是,
1.首先建立一个下拉式菜单文件。设计菜单时,在
“常规”选项中,选中“顶层表单”复选框,然后生
成菜单程序文件。
2.创建一个表单,将表单的 Show Windows属性值设为 2,
使该表单成为顶层表单,然后在表单的 Init事件代码
中添加代码,DO <菜单程序名 > WITH THIS,.T,
目录 上一页 下一页 退出2010-5-21 32
【 例 10-7】 为图书管理系统设计顶层表单
操作步骤如下:
1,打开 【 例 10-4】 创建的 system.mnx菜单, 将系统的
,显示, 菜单项下的, 常规选项, 对话框打开, 选中
,顶层表单,, 然后重新, 生成, 菜单 。
2,创建标题表单 (mainform.scx),设置其 Caption属性
为:, 图书管理系统 2.0 版,, Show Windows属性
设置为:, 2—作为顶层表单, 。 在表单中添加两个标
签控件, 将它们的 Caption属性分别设置为, 欢迎使用
图书管理系统, 和, 教学演示参考,, 并设置好字体,
字号等属性 。
3,为表单的 Init事件编写方法程序:
DO system.mpr WITH THIS,.T,
目录 上一页 下一页 退出2010-5-21 33
4,运行 mainform.scx表单,出现如图 10-17所示的窗口。从
图中可看出,该表单已不在 Visual FoxPro窗口中,而
是一个单独的表单。使用该表单作为应用程序的启动
表单,就可使用户菜单在自己的窗口中。
图 10-17 顶层表单
目录 上一页 下一页 退出2010-5-21 34
第七节 工具栏
在许多应用软件中都有自己的工具栏。设置工具栏的主
要目的是为方便用户操作。
1,定制系统工具栏
定制系统工具栏的操作步骤:
( 1) 打开需定制设置的系统工具栏, 如, 报表设计器,
工具栏;
( 2) 单击 【 显示 】 |【 工具栏 】 菜单项, 打开, 工具栏,
对话框, 如图 10-18所示 。
目录 上一页 下一页 退出2010-5-21 35
( 3)单击“定制”按钮,打开“定制工具栏”对话框,如图 10-
19所示。在“分类”列表框选择某类工具栏,“按钮”栏显示相
关的所有按钮,选中某个按钮后,“说明”栏显示该按钮的相关
说明文本;
图 10-19 定制工具栏图 10-18 工具栏
目录 上一页 下一页 退出2010-5-21 36
(4) 定制设置工具栏。
(5) 工具栏定制完成,单击“关闭”按钮。
2,创建新的工具栏
可以为 Visual FoxPro创建新的系统工具栏, 操作步骤
如下:
(1) 单击图 10-18中, 新建, 按钮, 打开如图 10-20所示
,新工具栏, 对话框;
(2) 输入新工具栏名称如, 我的工具栏,, 单击, 确定,
按钮;
(3) 屏幕出现新建的, 我的工具栏, 工具栏 ( 没有一个
按钮 ), 同时打开, 定制工具栏, 对话框;
目录 上一页 下一页 退出2010-5-21 37
(4) 将相关按钮拖到该工具栏, 创建, 设置对应的功
能按钮;
(5) 完成后单击, 关闭, 按钮 。
图 10-20 新 工具栏
2010-5-21 38
第 10 章
菜单设计与应用
目录 上一页 下一页 退出2010-5-21 2
本 章 目 录
第一节 Visual FoxPro菜单系统
第二节 菜单设计器
第三节 创建菜单 第
四节 用快速菜单创建菜单
第五节 创建快捷菜单 第六
节 修饰菜单设计 第七
节 工具栏
目录 上一页 下一页 退出2010-5-21 3
一、菜单的组成
菜单系统由一个菜单栏、多个菜单、菜单项和下拉菜
单所组成。菜单是包含命令、过程和子菜单的选项列
表。因此菜单按等级可分为父菜单和子菜单,子菜单
作为父菜单的一个菜单项。如图 10-1所示。
窗口标题 菜单栏 菜单项 热键 下拉菜单 不可选项 分隔线 一级子菜单
图 10 - 1 Visual FoxPro6.0 系统菜单窗口
第一节 Visual FoxPro菜单系统
目录 上一页 下一页 退出2010-5-21 4
要为一个应用程序创建一套菜单系统, 通常按照以下步骤进行:
1,规划与设计菜单系统
2,创建菜单和子菜单
3,菜单系统指定任务
4,生成菜单程序
菜单与表单不同,它不能直接在设计器中生成程序代码。而
必须专门生成菜单程序代码。在设计器中所做的一切将被保存在
一个带,MNX扩展名的文件中,在这个文件中保存了有关菜单系
统的所有信息,它实际上就是一个表文件。从“菜单”菜单上选
择“生成”命令,生成的菜单程序,扩展名为 MPR。
5,运行及测试菜单系统
二,菜单系统的设计
目录 上一页 下一页 退出2010-5-21 5
三、系统菜单的控制
Visual FoxPro6.0系统菜单是一个典型的菜单系统,
它的主菜单是一个条形菜单,其内部名字为 _MSYSMENU。
每一个菜单项和所激活的弹出式菜单均有一个内部名。
1.重新设置系统菜单。
命令格式是:
SET SYSMENU ON | OFF | AUTOMATIC | TO[<弹出式菜单
名表 >] | TO[<条形菜单项名表 >] | TO [DEFAULT] |
SAVE | NOSAVE
其中各子句的含义是:
ON 允许程序执行时访问系统菜单,OFF禁止访问,
AUTOMATIC访问系统菜单时使系统菜单显示。
目录 上一页 下一页 退出2010-5-21 6
TO[<弹出式菜单名表 >]:以菜单项内部名字列出可用的弹
出式菜单。
TO[<条形菜单项名表 >]:以条形菜单项内部名字列出可用
的子菜单。
TO[DEFAULT]:将系统菜单恢复成缺省配置。
SAVE:将当前系统菜单配置指定为缺省配置。
NOSAVE:将缺省设置恢复成 VFP系统的标准配置。
【例 10-1】 要求仅保留 Visual FoxPro系统菜单的, 文件,
( File),“编辑, ( Edit) 和, 工具, (Tools)菜单,
其 它选项都从系统菜单中移去。
执行命令,SET SYSMENU TO _MFILE,_MEDIT,_MTOOLS
命令执行后,系统菜单显示效果如图 10-2右图所示。
目录 上一页 下一页 退出2010-5-21 7
图 10 - 2 将标准系统菜单设置为新的系统菜单窗口
目录 上一页 下一页 退出2010-5-21 8
【 例 10-2】 将系统菜单恢复成标准菜单 。
先执行命令,SET SYSMENU NOSAVE
后执行命令,SET SYSMENU TO DEFAULT
执行上述命令后, 将例 10-1的系统菜单恢复成标准设置 。
注意,不带参数的 SET SYSMENU TO命令将屏蔽系统菜单。
2.从指定的下拉菜单中移去指定的菜单项
命令格式:
RELEASE BAR <下拉菜单项名 > OF <菜单项名 >
【 例 10-3】 从, 编辑, 菜单项的下拉菜单中移去, 复制,
和, 粘贴, 菜单项
执行命令:
RELEASE BAR _MED_COPY OF _MEDIT
RELEASE BAR _MED_PASTE OF _MEDIT
目录 上一页 下一页 退出2010-5-21 9
3,Visual FoxPro 系统菜单的名称和内部名
菜单名称 内部名称 菜单名称 内部名称
文件 (File) _MSM _ FILE 工具 (Tools) _MSM _ TOOLS
编辑 (Edit) _MSM _ EDIT 程序 (Program) _MSM _ PROG
显示 (Da ta S es si on ) _MS M _ VIEW 窗口 (Window) _MSM _ WINDO
格式 (Format) _MSM _ TEXT 帮助 (Help) _MSM _ SYSTM
表 10-1 系统主菜单的名称及其内部名称
目录 上一页 下一页 退出2010-5-21 10
四、创建菜单系统的步骤
1,规划系统 。 确定需要哪些菜单, 出现在界面何处,
以及哪几个菜单要有子菜单等 。
2,利用设计器创建菜单及子菜单 。
3,指定菜单所要执行的任务 。 例如显示表单或对话框
等 。 菜单建立好之后将生成一个以,mnx为扩展名的
菜单文件和以,mnt为扩展名的菜单备注文件 。
4,选择, 预览, 按钮预览整个菜单系统 。
5,从, 菜单, 项的下拉菜单中选择, 生成, 命令, 生成
菜 单程序以及运行菜单程序, 对菜单系统进行测试 。
6,从, 程序, 菜单中选择, 执行, 命令, 然后指定已生
成 的扩展名为,mpr的菜单程序文件 。
目录 上一页 下一页 退出2010-5-21 11
第二节 菜单设计器
一、菜单设计器
可利用如下几种方法打开菜单设计器:
1,从工具栏中单击, 新建, 按钮, 从文件类型列表中选
择, 菜单,, 然后单击, 新建文件, 按钮 。 在弹出的
,新建菜单, 对话框中选择, 菜单,, 则出现菜单设
计器窗口画面, 如图 10-3,10-4所示 。
2,通过, 文件, 菜单, 选择, 新建, 命令, 然后按 1的
步骤进行 。
3,通过项目管理器, 选取, 其它, 选项卡, 选择, 菜
单,, 然后单击, 新建, 按钮 。
4,通过命令方式打开菜单设计器建立或打开菜单 。
CREATE MENU〈 菜单文件名〉
或 MODIFY MENU<菜单文件名 >
目录 上一页 下一页 退出2010-5-21 12
图 10-4 菜单设计器窗口
移动按钮
图 10-3, 新建菜单, 对话
框
目录 上一页 下一页 退出2010-5-21 13
二、如何使用菜单设计器
1.菜单名称列,用来输入菜单项的名称 。 菜单项可定义
热键, 其方法是在热键的字符前加上, \<” 两个字符 。
2.结果列,用于菜单项的操作。单击该列弹出下拉列表
框,有命令、填充名称、子菜单和过程选项。
3.选项列,用于定义菜单项的附加属性。单击该列无符
号按钮,出现, 提示选项, 对话框供用户定义菜单项
的附加属性。
4,菜单级组合框,用于从下级菜单页切换到上级菜单页。
5.插入按钮,用于在当前菜单项行之前插入一个新的菜
单项行。
6.预览,显示所创建的菜单。一旦启动了菜单设计器,
Visual FoxPro的系统菜单会多出一项,菜单”,该菜
单中集成了与菜单设计相关的菜单项。
目录 上一页 下一页 退出2010-5-21 14
7.删除按钮,用于删除当前的菜单项行 。
8.预览按钮,用于预览菜单效果 。
9.移动按钮,用于拖动菜单项左侧的移动按钮,改变菜单
项的先后位置。
10.插入栏按钮,提供与系统菜单一样的菜单项作为用户菜
单的命令。单击, 插入栏, 按钮,弹出, 插入系统菜单栏,
对 话框。如图 10-5所示。
图 10-5, 插入系统菜单栏, 对话框
目录 上一页 下一页 退出2010-5-21 15
三、常规选项与菜单选项
菜单设计器窗口打开后,VFP“显示, 菜单项的下拉菜单
中将包含, 常规选项, 和, 菜单选项, 两个命令,它们
与菜单设计器窗口相结合,可使菜单设计更加完善。
1., 常规选项, 对话框
在, 显示, 菜单中单击, 常规选项, 命令,出现, 常规
选项, 对话框,如图 10-6所示。该对话框可以定义整个
下拉式菜单的总体属性。
“常规选项”是针对整个菜单的,它的主要作用:
其一,为整个菜单指定一个过程。
其二,可以确定用户菜单与系统菜单之间的位置关系。
其三,为菜单增加一个初始化过程和清理过程。
目录 上一页 下一页 退出2010-5-21 16
2., 菜单选项, 对话框
在, 显示, 菜单中单击, 菜单选项, 命令,出现, 菜单
选项, 对话框。该对话框中有一个过程编辑框,可供用
户为当前弹出式菜单写入公共的过程代码和 修改菜单项
的名称,如图 10-7所示。
图 10-6, 常规选项, 对话框 图 10-7, 菜单选项, 对
话框
目录 上一页 下一页 退出2010-5-21 17
第三节 创建菜单
创建菜单, 菜单项和子菜单方法和步骤
【 例 10-4】 利用菜单设计器建立一个图书管理系统菜
单 (system.mpr),其条形菜单的菜单项如图 10-8所示 。 其
中文件操作, 数据录入, 信息查询, 编辑修改等菜单项
均有下拉菜单, 在信息查询下拉菜单中还包含有子菜单 。
图 10-8 图书管理系统菜单
目录 上一页 下一页 退出2010-5-21 18
条形菜单、各下拉菜单及子菜单创建操作步骤如下:
1.打开菜单设计器窗口。
2.在, 菜单名称, 列中,输入条形菜单中各菜单项名称
并指定热键。在, 结果, 列中选定, 子菜单,,右侧
出现, 创建, 按钮,点击该按钮创建下拉菜单;在
,结果, 列中选定, 命令, 选项,在, 命令, 的右边
输入菜单项执行的命令。如图 10-9所示。
图 10-9 设置条形菜单的菜单项
目录 上一页 下一页 退出2010-5-21 19
3.创建, 信息查询, 菜单项的下拉菜单和下拉菜单中
,综合信息, 菜单项的子菜单。如图 10-10所示。
图 10-10, 信息查询, 菜单项的下拉菜单设
置
目录 上一页 下一页 退出2010-5-21 20
4.设置, 文件操作, 菜单项的下拉菜单。选定, 文件操
作, 所在行,单击, 创建,,选取, 插入栏 …, 按钮,
弹出如图 10-4所示的, 插入系统菜单栏, 对话框,从中
选取所需的 Visaul FoxPro菜单项,如图 10-11所示。
图 10-11, 文件操作, 菜单项的下拉菜单设
置
目录 上一页 下一页 退出2010-5-21 21
5.设计菜单组的分隔线。对, 文件操作, 下拉菜单中的菜单项
,关闭, 和, 另存为, 命令项的下面添加分隔线,可在, 关
闭, 菜单项和, 另存为, 菜单项的下一行的, 菜单名称, 栏
中,键入, \—” 即可。如图 10-8所示。
6.增加快捷键。如对, 编辑修改, 菜单项增加快捷键。在
,菜单名称, 栏中选定, 编辑修改, 菜单项,选择该行上的
,选项, 按钮,弹出如图 10-12所示的, 提示选项, 对话框,
在对话框中的, 键标签, 框中按下组合键 CTRL+E,则在键
标签和键说明中会出现所按下的快捷键。
重复上述操作,可以为所有的菜单项定义快捷键。
7.编写过程。如, 退出系统, 菜单项编写过程,在, 菜单名
称, 栏中选定, 退出系统, 菜单项,在, 结果, 列中选取
,过程,,单击, 创建,,在弹出的文本编辑窗口中输入以
下代码:
SET SYSMENU NOSAVE
SET SYSMENU TO DEFAULT
目录 上一页 下一页 退出2010-5-21 22
8.保存菜单。从, 菜单级, 列表框中选择, 菜单栏,,返回
主菜单。单击文件下拉菜单的保存选项或单击工具栏中的保
存按钮,然后在弹出的保存文件对话框中,输入要保存的路
径和文件名,如,d:\system.mnx。
9.生成菜单程序。单击, 菜单, 项,从弹出的下拉菜单中选
取, 生成, 命令,在, 输出文件, 文本框中输
入,d:\system.mpr,单击, 生成, 按钮,则生成菜单程序
文件,system.mpr。
10.运行菜单程序,do system.mpr
图 10-12, 提示选项, 对话
框
目录 上一页 下一页 退出2010-5-21 23
1,进入菜单设计器。
2,在, 菜单, 项的下拉菜单中选择, 快速菜单, 命令,
则一个 Visual FoxPro系统菜单自动加载到菜单设计器
中,如图 10-13所示。
第四节 用快速菜单创建菜单
图 10-13 建立快速菜单后的菜单设计器窗口
目录 上一页 下一页 退出2010-5-21 24
3,将菜单设计器的第一行置为当前行。单击, 编辑, 按钮
可使, 菜单设计器, 进入子菜单进行编辑。
说明:
(1) 快速生成的菜单和系统菜单相同, 其中的功能项可以
在菜单设计器中进行增加, 修改或删除 。
(2) 快速菜单只有在菜单设计器窗口为空时才允许选择,
否则它是浅色的 。
(3) 快速菜单仅用于产生下拉式菜单。若需改变菜单栏上
各菜单项位置,则通过拖动移动钮实现。
目录 上一页 下一页 退出2010-5-21 25
第五节 创建快捷菜单
利用, 快捷菜单设计器, 仅能生成快捷菜单的菜单本
身,实现单击右键来弹出一个菜单的动作还需要编程。
【 例 10-5】 建立一个具有撤消, 剪切, 复制, 粘贴等功
能的快捷菜单 (autcp.mpr), 供浏览读者表时使用 。 当
用户在浏览窗口单击鼠标右键时, 即出现此快捷菜单 。
操作步骤如下:
( 1)打开快捷菜单设计器窗口。
单击工具栏中的, 新建, 按钮,打开, 新建, 对话框,
选择, 菜单, 按钮,再单击, 新建文件, 按钮,在屏
幕出现的, 新建菜单, 对话框中选择, 快捷菜单, 按
钮,进入快捷菜单设计器。
目录 上一页 下一页 退出2010-5-21 26
(2) 插入系统菜单栏 。
在快捷菜单设计器窗口中,选择, 插入栏, 按钮,在
出现的, 插入系统菜单栏, 对话框中选择, 粘贴, 选
项,再单击, 插入, 按钮,则, 粘贴, 作为菜单项出
现在快捷菜单中。同样在快捷菜单中可插入, 复制,,
,剪切,,, 撤消,,, 清除, 等选项,最后单击
,关闭, 按钮 。
( 3) 生成菜单程序 。
打开, 菜单, 菜单项的下拉菜单,选择, 生成, 命令,
在, 保存菜单为, 输入框中输入 autcp.mpr文件名,单
击, 保存, 按钮,在, 生成菜单, 对话框中选择, 生
成, 按钮,就会生成菜单程序 autcp.mpr 。
(4) 编写调用程序 。
命令方式,MODI COMM dyautcp
按回车键后出现程序编辑窗口。
目录 上一页 下一页 退出2010-5-21 27
CLEAR ALL
PUSH KEY CLEAR && 清除以前设置过的功能键
ON KEY LABEL RIGHTMOUSE DO autcp.mpr
&&单击鼠标右键执行快捷菜单
USE 读者
BROWSE
USE
PUSH KEY CLEAR
关闭程序编辑窗口,并以 dyautcp文件名进行保存。
(5) 运行调用程序及快捷菜单程序。
命令方式,DO dyautcp
浏览窗口出现在屏幕上以后,当选择任何数据单击右键
时,随即弹出快捷菜单,如图 10-14所示。
目录 上一页 下一页 退出2010-5-21 28
图 10-14 快捷菜单在浏览窗口中的使用
目录 上一页 下一页 退出2010-5-21 29
【 例 10-6】 运用例 10-5创建的快捷菜单 autcp.mpr,设计
一个编辑器表单 (editform.scx),使对编辑器中输入
的文本可以进行清除, 撤消, 剪切, 复制和粘贴等操
作 。 操作步骤如下:
1.进入表单设计器,从表单控件工具栏单击 编辑 控件 按
钮,拖至表单添加一个编辑框。
2.在属性对话框中,将表单 Caption属性设置为“编辑
器”,双击编辑框的 RightClickEvent属性。
3.在弹出的 RightClickEvent属性代码编辑框中编写方
法程序。如图 10-15所示。
DO AUTCP.MPR
&& 当单击鼠标右键时执行快捷菜单 autcp.mpr
4.保存、运行表单以及测试快捷菜单。
目录 上一页 下一页 退出2010-5-21 30
5.运行创建的表单,在表单的编辑器内输入文本,单击
鼠标右键弹出快捷菜单,则此时可对选中的文本进行清
除、撤消、剪切、复制和粘贴等操作,如图 10-16所示。
图 10-16 在编辑器中使用快捷菜单
图 10-15 为单击按钮编写方法程序
目录 上一页 下一页 退出2010-5-21 31
第六节 修饰菜单设计
运用菜单设计器设计完菜单后,窗口的标题是
,Microsoft Visual FoxPro”,这是系统窗口的默
认标题,运用顶层表单的设计方法,可以将此标题改
为其它的标题。方法是,
1.首先建立一个下拉式菜单文件。设计菜单时,在
“常规”选项中,选中“顶层表单”复选框,然后生
成菜单程序文件。
2.创建一个表单,将表单的 Show Windows属性值设为 2,
使该表单成为顶层表单,然后在表单的 Init事件代码
中添加代码,DO <菜单程序名 > WITH THIS,.T,
目录 上一页 下一页 退出2010-5-21 32
【 例 10-7】 为图书管理系统设计顶层表单
操作步骤如下:
1,打开 【 例 10-4】 创建的 system.mnx菜单, 将系统的
,显示, 菜单项下的, 常规选项, 对话框打开, 选中
,顶层表单,, 然后重新, 生成, 菜单 。
2,创建标题表单 (mainform.scx),设置其 Caption属性
为:, 图书管理系统 2.0 版,, Show Windows属性
设置为:, 2—作为顶层表单, 。 在表单中添加两个标
签控件, 将它们的 Caption属性分别设置为, 欢迎使用
图书管理系统, 和, 教学演示参考,, 并设置好字体,
字号等属性 。
3,为表单的 Init事件编写方法程序:
DO system.mpr WITH THIS,.T,
目录 上一页 下一页 退出2010-5-21 33
4,运行 mainform.scx表单,出现如图 10-17所示的窗口。从
图中可看出,该表单已不在 Visual FoxPro窗口中,而
是一个单独的表单。使用该表单作为应用程序的启动
表单,就可使用户菜单在自己的窗口中。
图 10-17 顶层表单
目录 上一页 下一页 退出2010-5-21 34
第七节 工具栏
在许多应用软件中都有自己的工具栏。设置工具栏的主
要目的是为方便用户操作。
1,定制系统工具栏
定制系统工具栏的操作步骤:
( 1) 打开需定制设置的系统工具栏, 如, 报表设计器,
工具栏;
( 2) 单击 【 显示 】 |【 工具栏 】 菜单项, 打开, 工具栏,
对话框, 如图 10-18所示 。
目录 上一页 下一页 退出2010-5-21 35
( 3)单击“定制”按钮,打开“定制工具栏”对话框,如图 10-
19所示。在“分类”列表框选择某类工具栏,“按钮”栏显示相
关的所有按钮,选中某个按钮后,“说明”栏显示该按钮的相关
说明文本;
图 10-19 定制工具栏图 10-18 工具栏
目录 上一页 下一页 退出2010-5-21 36
(4) 定制设置工具栏。
(5) 工具栏定制完成,单击“关闭”按钮。
2,创建新的工具栏
可以为 Visual FoxPro创建新的系统工具栏, 操作步骤
如下:
(1) 单击图 10-18中, 新建, 按钮, 打开如图 10-20所示
,新工具栏, 对话框;
(2) 输入新工具栏名称如, 我的工具栏,, 单击, 确定,
按钮;
(3) 屏幕出现新建的, 我的工具栏, 工具栏 ( 没有一个
按钮 ), 同时打开, 定制工具栏, 对话框;
目录 上一页 下一页 退出2010-5-21 37
(4) 将相关按钮拖到该工具栏, 创建, 设置对应的功
能按钮;
(5) 完成后单击, 关闭, 按钮 。
图 10-20 新 工具栏
2010-5-21 38