第一范文网 - 专业文章范例文档资料分享平台

第7章 菜单设计与应用

来源:用户分享 时间:2025/5/28 15:04:38 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

菜单设计与应用

一、 系统菜单:

常见的菜单有两种:下拉式菜单与快捷菜单。

典型的菜单系统一般是一个下拉式菜单,由一个条形菜单和一组弹出式菜单组成。其中条形菜单作为主菜单,弹出式菜单作为子菜单。 1.菜单结构:

VFP支持两种类型的菜单:条形菜单和弹出式菜单。每一个菜单项都可以选择地设置一个热键和一个快捷键。无论是那种类型的菜单,当选中某个选项时都会有一定的动作:执行一条命令、执行一个过程或激活另一个菜单。

2.系统菜单:

Visual FoxPro系统菜单是一个典型的菜单系统,其主菜单是一个条形菜单。条形菜单中常见选项的名称及内部名字如表7.1,7.2,7.3。(P225)

SET SYSMENU:可以允许或禁止在程序执行时访问系统菜单,也可以重新配置系统菜单,格式如下:

格式:SET SYSMENU ON | OFF

&& 允许/禁止访问系统菜单

SET SYSMENU AUTOMATIC

&& 可使系统菜单显示出来,可以访问系统菜单

SET SYSMENU TO [DEFAULT] && 屏蔽或恢复系统菜单默认值

SET SYSMENU SAVE && 将当前的系统菜单配置指定为缺省配置 SET SYSMENU NOSAVE && 恢复VFP系统菜单的标准配置

图5.1 VFP菜单结构

弹出式菜单 条形菜单

二、 下拉式菜单设计:

1.菜单设计的基本步骤及设计窗口:

打开菜单设计器 定义菜单项 菜单文件(mnx,mnt) 生成菜单程序 菜单程序文件(mpr) 运行并调试菜单程序 图5.2 菜单设计的一般步骤 图5.3 菜单设计器窗口

菜单设计的基本过程

① 调用菜单设计器(命令为:modify menu <文件名>)。

② 在“菜单设计器”窗口中定义菜单,指定菜单的各项内容,并保存。

③ 通过菜单命令“菜单”*“生成”命令,产生可执行的菜单程序文件(.mpr)。 ④ 使用命令:DO <文件名>运行菜单程序,文件扩展名mpr不能省略。

如:DO caidan.mpr

打造卓越人才,成就人生梦想

菜单设计与应用

2.定义菜单

1)“菜单设计器”窗口

① “菜单名称”列:指定菜单项的名称

“\\<”:为指定的菜单名称设置访问键。 “\\-”:菜单项分组

② “结果”列:指定当用户选择该菜单项时的动作

? 命令:出现一文本框,可输入具体的命令

? 过程:出现按钮,点击可输入或编辑过程代码 ? 子菜单:创建或编辑子菜单

? 填充名称或菜单项#:可在文本框中输入菜单项的内部名字或序号 ③ “选项”列:定义菜单项的属性;已定义过属性,则在按钮上出现”√” 例7.1(P232)、例7.2(P234)

3.为顶层表单添加下拉式菜单 方法和过程如下:

① 在“菜单设计器”窗口中设计好下拉式菜单。

② 打开“常规选项”对话框,选中对话框右下角的“顶层表单”复选框。 ③ 将表单的ShowWindow属性设置为2,使之成为顶层表单。 ④ 在表单的Init事件中添加调用菜单的程序代码:

DO <文件名> WITH This[,“<菜单名>”]

此处的<文件名>是指被调用的菜单程序文件(扩展名MPR不能省),<菜单名>是为被添加的下拉式菜单的条形菜单指定的一个内部名字。

⑤ 在表单的Destroy事件中添加清除菜单的程序代码:

RELEASE MENU<菜单名>[EXTENDED]

其中EXTENDED表示在清除条形菜单时一起清除其下属的所有子菜单。 例7.3(P236)

4.关于菜单的几点说明:

? 添加分组线:\\- 注:如果将“菜单名”内容确定为“\\-”,则该菜单项将成为分组线 ? 添加热键:\\< 如:文件(\\

打造卓越人才,成就人生梦想

菜单设计与应用

? 菜单程序文件扩展名:.mpr

? 菜单运行使用:DO <文件名> 注:运行菜单文件时,其文件扩展名不能省略。如:DO abcd.mpr 5.“常规选项”的设置

“常规选项”主要是对条形菜单属性进行设置,设置窗口如图5.4所示: (1).过程:为条形菜单指定一个过程代码,用于如果条形菜单中的某个菜单项没有规定具体动作(内容),而用户选择该菜单项时作默认过程代码执行。该代码可以直接输入在“过程”框中,也可单击“编辑”按钮,然后在随之出现的编辑框中输入。

(2).位置:指明正在定义的下拉式菜单与当前系统菜单的关系。其中:

? 替换:用定义的菜单内容替换当前系统菜单内容;

? 追加:将定义的菜单内容添加到系统菜单内容的后面; ? 在…之前:将定义的菜单内容插入当前系统菜单某个弹出式菜单之前; ? 在…之后:将定义的菜单内容插入当前系统菜单某个弹出式菜单之后。

图 5.4 常规选项对话框

(3).菜单代码:用于设置菜单代码前、后执行的程序。

? 设置:设置放置在菜单程序文件中定义的代码之前,一般用于为菜单设置初始环境; ? 清理:设置放置在菜单程序文件中定义的代码之后,一般用于在菜单结束后的环境清理。 (4).顶层表单:决定定义的菜单是否可以被添加到一个顶层表单中。

6.“菜单选项”的设置

“菜单选项”主要是对弹出式菜单属性进行设置,设置窗口如图5.5所示。其主要作用是设置当前弹出式菜单的公共过程代码。如果当前弹 出式菜单的某个菜单项没有规定具体动作,那么当选择此项时,将执行图 5.5 菜单选项对话框 该代码。

三、快捷菜单设计(建立方法与下拉菜单相似)

快捷菜单:鼠标右击某对象时弹出的菜单。它一般从属于某个界面对象。 快捷菜单与下拉式菜单的区别:快捷菜单没有条形菜单,只有弹出式菜单。 快捷菜单设计的基本过程(建立方法与下拉菜单相似) ① 调用快捷菜单设计器

② 在“快捷菜单设计器”窗口中定义菜单,指定菜单的各项内容,并保存。

③ 在快捷菜单的“清理”代码中添加清除菜单的命令,使得在选择、执行菜单命令后能及时清除菜单,

释放其占用的内存空间。命令格式: Release popups <快捷菜单名> [extended]

④ 通过菜单命令“菜单”*“生成”命令,产生可执行的菜单程序文件(.mpr)。 ⑤ 在表单设计环境下,选定需要添加快捷菜单的对象。

⑥ 在选定对象的rightclick事件代码中添加调用快捷菜单程序的命令: DO <快捷菜单文件名> 其中文件扩展名mpr不能省略。

执行:在选定对象的RightClick事件代码中,添加调用快捷菜单程序的格式为: DO <快捷菜单程序文件名> WITH THIS

清除:释放其所占用的内存空间,格式为:

RELEASE POPUPS <快捷菜单名> [EXTENDED]

例7.4(P237)

打造卓越人才,成就人生梦想

搜索更多关于: 第7章 菜单设计与应用 的文档
第7章 菜单设计与应用.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c11jhh8555a570pk9t1th_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top