9(CEN)第八章 菜单设计

合集下载

第八章菜单设计

第八章菜单设计
- 17 -
第 八 章 菜 单 设 计
8.3.1建立程序菜单 8.3.1建立程序菜单
新建程序菜单的方法: 新建程序菜单的方法: 程序菜单的方法 方法一: 方法一:菜单法 方法二: 菜单→ 新建” 方法二:工具法 “新建”→选择 文件” “文件”菜单→ “新建”常用工具→选择“ →“菜单 新建” 方法三:常用工具→选择“菜单” 新建 方法三:项目管理器法 ” 菜单”→ ” 菜单” 新建文件” 菜单” “菜单”→“新建文件 方法四: 方法四:命令法 “菜单”按钮。 新建文件” “新建文件”→ 菜单”按钮。 项目管理器中“其他” 项目管理器中“其他”卡→选中 菜单” 新建” 菜单” “ 菜单 ” → “ 新建 ” → “ 菜单 ” 按 钮。 :CREATE MENU [<菜单文件名〉] 格式: [<菜单文件名 菜单文件名〉 格式
- 18 -
第 八 章 菜 单 设 计
8.3.2定义菜单项信息 8.3.2定义菜单项信息
菜单设计器可定义菜单栏和 菜单设计器可定义菜单栏和子菜 可定义菜单栏 菜单栏和子菜单有各自的 有各自的编辑窗 单,菜单栏和子菜单有各自的编辑窗 口。 菜单栏编辑窗口中 可通过“ 编辑窗口中, 菜单栏编辑窗口中,可通过“创 编辑”进入子菜单编辑窗口 子菜单编辑窗口; 建”或“编辑”进入子菜单编辑窗口; 子菜单编辑窗口中 可通过“ 子菜单编辑窗口中,可通过“菜 编辑窗口 单级”组合框选择“菜单栏” 单级”组合框选择“菜单栏”或菜单 切换到上级菜单编辑窗口 上级菜单编辑窗口。 名切换到上级菜单编辑窗口。
-6-
第 八 章 菜 单 设 计
【 例 2 】 SET SYSMENU TO _MSM_FILE,_MSM_EDIT 显示“文件” 编辑”菜单项。 显示“文件”和“编辑”菜单项。

第8课 菜单设计

第8课 菜单设计

Visual FoxPro数据库开发培训教程
2. 菜单设计器
Visual FoxPro使用菜单设计器定义菜单系 统,包括主菜单、子菜单、菜单项和菜单 功能实现等。菜单设计器如图所示。
Visual FoxPro数据库开发培训教程
2. 菜单设计器
1)打开菜单设计器 从项目管理器打开菜单设计器 选择菜单命令打开菜单设计器 执行命令打开菜单设计器
Visual FoxPro数据库开发培训教程
1.菜单基础
1)菜单的基本概念 2)系统菜单 3)运行菜单程序 4)菜单设计步骤
Visual FoxPro数据库开发培训教程
1)菜单的基本概念
Visual FoxPro菜单可分为下拉式菜单和快捷 菜单两种类型。 每个菜单都有一个内部名称和一组子菜单,子 菜单中各个菜单项也有菜单项名称和内部名称。 每个菜单项可定义一个键盘选择键和快捷键 每个菜单的定义保存在一个.mnx文件中,称为 菜单文件。
Visual FoxPro数据库开发培训教程
8.1.2 典型案例——设计记录浏览菜单
操作步骤 具体步骤请参见图书内容。
Visual FoxPro数据库开发培训教程
8.1.2 典型案例——设计记录浏览菜单
案例小结
本案例练习了创建下拉式菜单和快捷菜单,从操作 过程可看出两种菜单设计操作相同,只是打开菜单 设计器的方法和菜单程序的使用有所区别。 菜单程序文件.mpr实际上是一个文本文件,包含 了菜单命令代码。
Visual FoxPro数据库开发培训教程
8.2 上机练习
8.2.1 设计记录编辑菜单 8.2.2 设计字体设置菜单
Visual FoxPro数据库开发培训教程
8.3.1 设计记录编辑菜单

第八章菜单设计1

第八章菜单设计1
3
Visual FoxPro
常规的菜单系统一般是一个下拉式菜单, 常规的菜单系统一般是一个下拉式菜单,由一个条形菜单和一 组弹出式菜单组成.其中条形菜单作为主菜单, 组弹出式菜单组成.其中条形菜单作为主菜单,弹出式菜单 作为子菜单.当选择一个条形菜单选项时, 作为子菜单.当选择一个条形菜单选项时,激活相应的弹出 式菜单. 式菜单. 而快捷菜单一般由一个或一组上下级的弹出式菜单组成. 而快捷菜单一般由一个或一组上下级的弹出式菜单组成. 在Visual FoxPro中,可以利用"菜单设计器"来设计并生成下 中 可以利用"菜单设计器" 拉式菜单与快捷菜单.若想从已有的 拉式菜单与快捷菜单.若想从已有的Visual FoxPro菜单系统 菜单系统 开始创建菜单,则可以使用"快速菜单"功能. 开始创建菜单,则可以使用"快速菜单"功能.
7
Visual FoxPro
TO子句用于重新设置系统菜单."TO [<弹出式菜单名表 子句用于重新设置系统菜单. 弹出式菜单名表>]" 子句用于重新设置系统菜单 弹出式菜单名表 以菜单项内部名字列出可用的弹出式菜单.例如,命令SET 以菜单项内部名字列出可用的弹出式菜单.例如,命令 SYSMENU TO _MFILE,_MEDIT将使系统菜单只保留"文 将使系统菜单只保留" 将使系统菜单只保留 编辑"两个子菜单. 条形菜单项名表>]"以 件"和"编辑"两个子菜单."TO [<条形菜单项名表 以 条形菜单项名表 条形菜单项内部名字列出可用的子菜单.例如, 条形菜单项内部名字列出可用的子菜单.例如,上面的系统 菜单设置命令也可以写成SET SYSMENU TO 菜单设置命令也可以写成 _MSM_FILE,_MSM_EDIT. . "TO [DEFAULT]"将系统菜单恢复为缺省配置.SAVE将当前 将系统菜单恢复为缺省配置. 将当前 将系统菜单恢复为缺省配置 系统菜单配置指定为缺省配置, 系统菜单配置指定为缺省配置,NOSAVE将缺省设置恢复成 将缺省设置恢复成 Visual FoxPro系统的标准配置.要将系统菜单恢复成标准设 系统的标准配置. 系统的标准配置 可先执行SET SYSMENU NOSAVE命令,然后执行 命令, 置,可先执行 命令 SET SYSMENU TO DEFAULT命令. 命令. 命令 不带参数的SET SYSMENU TO 命令将屏蔽系统菜单,使系统 命令将屏蔽系统菜单, 不带参数的 菜单不可用. 菜单不可用.

第八章菜单

第八章菜单
铜陵学院数学与计算机系
• 将快捷方式菜单附加到控件中 • 将SDI(单文档界面)菜单附加到表单中
铜陵学院数学与计算机系
8.5 典型例题分析
• 【例8-1】创建如图8-24所示的菜单系统
• 图8-24 “铜陵学院教务系统教师端”界面
铜陵学院数学与计算机系
• 设计分析: • 本例主要考察菜单系统创建及其相关操作。
第八章 菜单Biblioteka 铜陵学院数学与计算机系• 8.1 菜单系统 • 8.2 菜单设计 • 8.3 菜单程序的调试与运行 • 8.4 在应用程序中使用菜单 • 8.5 典型例题分析
铜陵学院数学与计算机系
8.1菜单系统
• 菜单是应用程序的一个重要组成部分.菜单即是一系列选 项,每个菜单项对应一个命令或程序,能够实现某种特定的 功能。用户使用时,只需要单击相应选项,或者按下设定 的键,就可以完成对应功能项的选择。
创建菜单系统通常采用菜单设计器来完成, 要想为应用程序创建一个功能完备、操作 简单且美观实用的菜单系统,必须对菜单 系统的组成以及菜单设计器的使用非常了 解。
铜陵学院数学与计算机系
铜陵学院数学与计算机系
• 认识菜单设计器 • 利用菜单设计器创建下拉式菜单 • 利用快捷菜单设计器创建快捷菜单 • 利用快速菜单创建自己所需的菜单系统
铜陵学院数学与计算机系
8.3 菜单程序的调试与运行
• 预览菜单系统 • 菜单程序的生成与运行
铜陵学院数学与计算机系
8.4 在应用程序中使用菜单
• 创建菜单系统后,可将其添加到应用程序中,以 便用户操作。
• 若要在应用程序中包含菜单,可将.mnx菜单文件 添加到项目中,并由项目建立应用程序。请注意: 如果设计的应用程序的主文件是一个菜单,则应 用程序刚刚显示时,菜单就终止运行了,因此, 我们可以在主菜单的清理代码中包含 READ EVENTS 命令,并为退出菜单系统的菜单命令指 定一个CLEAR EVENTS 命令,这样就可以防止 应用程序的运行过早地中断。

第8章 菜单设计

第8章 菜单设计
2010-11-1 现代教育技术中心 23
等级考试题目案例
2010-11-1
现代教育技术中心
24
8.2 创建应用系统菜单
8.2.3 在顶层表单中添加菜单
若要在顶层表单中添加菜单,可以按以下步骤操作: (1)在“常规选项”对话框中选择“顶层表单”复选 框,创建顶层表单的菜单; (2)将表单的ShowWindow属性设置为“2-作为顶层表 单”; (3)在表单的Init事件中,运行菜单程序并传递两个 参数: DO <文件名> with oForm , IAutoRename
2010-11-1 现代教育技术中心 14
8.2 创建应用系统菜单
创建菜单的操作步骤
文件
新建
菜单
新菜单
菜单设计器
保存
命令
编辑
菜单名字
2010-11-1
现代教育技术中心
15
8.2 创建应用系统菜单
2. 创建子菜单 创建子菜单,实际上是给主菜单定义子菜单选项。 当菜单栏内的菜单添加完成后,可以针对每一个菜单 单击“创建”按钮来录入下一级菜单。一旦进入下一 级菜单的设置,在“菜单级”框中显示的就不是“菜 单栏”了,而是该下级菜单所对应的名称。 stumenu.mnx中各菜单选项创建子菜单 中各菜单选项创建子菜单。 例9.2 给stumenu.mnx中各菜单选项创建子菜单。 操作步骤如下: (1)打开菜单,进入“菜单设计器”窗口。 (2)在“菜单设计器”窗口,选择主菜单选项中的“系 统管理”,再选择“创建”按钮,进入“菜单设计器”子 菜单编辑窗口。
2010-11-1
现代教育技术中心Βιβλιοθήκη 118.2 创建应用系统菜单
(6)预览 显示所创建的菜单。一旦启动了菜单设计器, Visual FoxPro的系统菜单会多出一项 “菜单”,该 菜单中集成了与菜单设计相关的菜单项,如图所示。

第8章 菜单和工具栏设计

第8章 菜单和工具栏设计

【案例8-3】 下面制作一个如图所示 的快捷菜单
8.3 创建工具栏
Visual FoxPro 6.0自动提供了大量的 工具栏,例如【常用】工具栏、【表单控 件】工具栏、【布局】工具栏等。用户在 开发应用程序时也可以自己创建工具栏, 将经常要完成的操作命令以按钮的形式添 加到工具栏上。
8.3.1 创建工具栏
8.2 菜单设计
8.2.1 【菜单设计器】 【菜单设计器】是Visual FoxPro 6.0 提供的可视化菜单设计工具,无须编写代 码。既可以定制已有的Visual FoxPro 6.0 菜单系统,也可以开发用户自己的菜单系 统
1.打开【菜单设计器】 用户打开【菜单设计器】有以下几种 方法。 · 方法1:选择文件菜单中的【新建】命令, 弹出【新建】对话框。在对话框中选中菜 单单选钮,然后单击新建文件按钮,弹出 【新建菜单】对话框。 方法2:单击工具栏中的(新建)按钮,其 余步骤同方法一。
8.1.1 下拉菜单
如同Windows菜单一样, Visual FoxPro 6.0的下拉菜单是一个 树形结构,其中包括一个应用程序 的功能框架
8.1.2 快捷菜单
快捷菜单一般属于某个界面对 象,如表单。当鼠标右键单击该对象 时,就会在单击处弹出快捷菜单。快 捷菜单通常列出与处理对象有关的一 些功能命令
8.2.2 创建快速菜单
在设计普通菜单时,Visual FoxPro 6.0为用户提供了创建快速菜单的功能。它 将系统菜单自动添加到【菜单设计器】窗 口中。为了便于生成菜单,提供了系统菜 单的常用功能和标题,其中许多功能可以 作为应用程序的菜单功能来使用。如系统 菜单栏中【编辑】菜单的功能可以在编辑 应用程序时使用。
8.1.3 菜单的设计概要

第八章 菜单设计

第八章 菜单设计

第8章菜单设计组织水平用户友善性应用程序具有WINDOWS风格菜单设计器所谓菜单就是将应用程序具有的各项功能显示在屏幕上,用户选择功能项操作就象点菜一样,只需单击相应选项或按某一设定的键,即可完成对应功能项的选择.名词解释:下拉式菜单分类:条形菜单,弹出式菜单菜单栏菜单标题菜单项分隔线子菜单多级访问键(热键) 快捷键点每个菜单后执行的任务创建菜单系统:步骤:(1)规划菜单系统(2)菜单设计器创建菜单方式:新建→文件→菜单命令方式: modi menu <菜单文件名> (菜单文件的扩展名是.MNX)项目管理器方式:(3)按实际要求指定菜单所要执行的任务.(4)预览(5)菜单→生成生成菜单程序.(扩展名为.MPR)(6)执行菜单方式:程序→执行命令方式: do <菜单文件名> ( 如: do 11.mpr )菜单设计器的启用菜单设计器的使用:菜单设计器打开后界面的变化: 菜单设计器(包括哪些项目),新增”菜单”菜单,”显示”菜单的变化常规选项对话框:快捷菜单:在控件或对象上单击鼠标右键,将会显示快捷方式菜单,以实施对当前对象可用的操作. 不是针对应用系统全局的,只是针对系统中某个确定的对象的菜单.确定对象,规划菜单第9章报表报表的作用:显示和总结数据两个基本部分:数据源: 自由表,数据库表,视图,查询或临时表布局:定义了报表的打印格式.扩展名为: .FRX(伴随一个FRT报表备注文件)报表数据根据数据源的变化而变化,即定义的报表文件只存储位置和格式信息,不存储报表数据。

.标签扩展名.LBX 相关文件扩展名为.LBT9.1 设计报表1.选择报表类型:✧列报表: 每行一条记录.(最常用) 如:学生成绩报表等.例: DZ.FRX✧行报表:每条记录的所有字段在一侧. 例:TS2.FRX✧一对多报表: 例: DZJY.FRX✧多级报表:列报表的扩展.标签:特殊的报表,多列记录.2.创建报表布局文件(1)报表向导(2)快速报表(3)报表设计器3.修改报表布局文件命令方式创建报表: CREAT REPORT<报表文件名>命令方式打开报表: MODIFY REPORT <报表文件名>报表带区: 基本带区:页标头,细节,页注脚(每个带区下的栏目标识了该带区)做一个简单的报表,数据源为学生信息表,页注脚显示页数和日期其余带区: 表7-1修改报表带区,选择报表控件,调整控件大小,布局设计4.预览和打印报表5.运行报表: REPORT FORM <报表文件名> 如: REPORTFORM 11.FRX9.2在报表中添加报表控件1.认识表单控件的工具栏,知道可以插入哪些控件可以插入各种报表控件:标签,域(字段,变量,表达式), 形状(线条,矩形,圆角矩形),图片/OLE绑定型控件添加方法: (1)插入字段的方法①数据环境中②域控件(2)当前日期域控件DATE()(3)插入页码: 域控件_PAGENO(4)插入标签(5)插入形状(6)插入图片2.格式化域控件。

第8章 菜单设计

第8章 菜单设计

教学过程:组织教学:学生起立、致礼,教师清查人数并集中学生注意力。

引入新课:菜单为应用程序提供了一个友好的、结构化的、可访问的接口。

在Visual FoxPro中如何恰当地设计一个界面友好、使用方便、具有良好风格的菜单系统,使应用程序的主要功能得到体现,是本章将要学习的内容。

讲授新课:菜单设计1.菜单结构常用菜单栏由菜单标题、菜单项以及子菜单组成。

常规的菜单系统一般是一个下拉式菜单,由一个条形菜单和一组弹出式菜单组成。

其中条形菜单作为主菜单,弹出式菜单作为子菜单。

当选择一个条形菜单时,激活相应的弹出式菜单。

(1)建立菜单系统的步骤①规划和设计菜单系统。

②建立菜单项和子菜单:使用菜单设计器来定义菜单标题、菜单项和子菜单,为菜单和菜单项设置对话框方式和快捷键方式。

③指定菜单项的任务:按实际要求为各菜单项指定任务。

④生成和运行菜单:菜单定义好后保存在一个以.mnx为扩展名的菜单文件和一个以.mnt 为扩展名的菜单备注文件中。

菜单文件需生成扩展名为.MPR的菜单程序文件才能运行。

(2)系统菜单的控制在Visual FoxPro中,每一个条形菜单都有一个内部名字和一组菜单选项,每个菜单选项都有一个名称(标题)和内部名字。

例如,Visual FoxPro主菜单的内部名字为_MSYSMENU,条形菜单项“文件”、“编辑”的内部名字分别为_MSM_FILE,_MSM_EDIT。

每个弹出式菜单也有一个内部名字和一组菜单选项,每个菜单选项也有一个名称(标题)和选项序号。

例如,_MFILE,_MEDIT分别为弹出式菜单项“文件”、“编辑”的内部名。

菜单项的名称用于在屏幕上显示菜单系统,而内部名字和选项序号则用于在程序代码中引用。

2.下拉式菜单设计在Visual FoxPro中,建立菜单或修改已有菜单,都在菜单设计器窗口下进行。

(1)菜单设计器1)打开菜单设计器窗口可以有多种方式打开菜单设计器窗口:①使用系统主菜单从系统主菜单下打开“文件”菜单项,选择“新建”命令,将弹出“新建”窗口,从中选择“菜单”,然后单击右边“新建文件”,将弹出“新建菜单”对话框。

菜单设计

菜单设计

第八章菜单设计教学目的:通过本章的学习,了解菜单的重要性,掌握菜单的分类,掌握各种菜单的概念,掌握菜单设计的依据懂得各种菜单的定价与制作。

教学内容:菜单的作用、菜单的分类、菜单内容编排、菜单定价与艺术设计教学重点:菜单的分类、菜单的内容编排与设计教学方法:讲授法教学过程:第一节菜单的作用与种类一、菜单的含义菜单是饭店餐饮部为客人提供的食品和酒水饮料的项目清单。

二、菜单的作用对餐厅来说,菜单的制定是非常重要的。

菜单决定了餐厅服务设施和食品原料品种、数量的采购、菜肴烹制技艺和餐厅服务的特色。

它是餐饮经营活动的重要依据和环节。

菜单也是酒店餐饮服务最重要的推销媒介,它既是餐厅的质量水准与经营特色的标志,又紧密联系着顾客的需求,是酒店餐厅员工推销菜点的重要依据。

所以餐饮经营活动中,都特别重视菜单的作用。

1、菜单是沟通产品信息的桥梁。

客人在餐厅落座后,第一步是点菜,凭菜单选购自己喜欢的菜肴和饮品,经营者则根据菜单向客人推荐。

经营者和消费者通过菜单开始交流,客人喜欢的菜单,有时候像一支兴奋剂,能激发客人的食欲,既可满足客人的饮食需要,又能扩大销售额,增加餐厅的收入。

2、菜单是餐厅服务人员为客人提供服务的依据。

3、菜单是餐饮工作的纲领和核心。

4、菜单是餐饮成本控制和促销的重要工具。

5、菜单决定了餐饮企业所需员工的数量与质量要求。

6、菜单是餐饮企业重要的宣传品之一。

7、菜单是餐饮企业成本控制的依据。

三、菜单的分类1、根据企业的经营策略分类(1)零点菜单零点菜单指每道菜都单独标价的菜单。

这是餐厅中使用最为广泛的一种菜单形式。

如正餐厅、风味餐厅、咖啡厅。

(2)套菜菜单套菜菜单指由餐饮企业按一般的进餐习惯为客人提供规定的菜点,而客人不能由客人自由选择。

其特点是只有一套的统一价格,而没有每道菜点的单独价格。

1)普通套菜菜单。

普通套菜通常是将一个人或几个人吃一餐饭需要的几种主食、菜肴或饮料组合在一起以包价销售。

2)团体套菜菜单。

ppt8第八章 菜单设计

ppt8第八章 菜单设计

按相同的方法分别为【数据输入】、【报表】、【查询】、【帮助】的子 菜单中各菜单项指定任务。 菜单设计完成后,选择系统菜单上的【菜单】|【生成】,生成.MPR文件。
生成gxglxt.mpr文件后,便可以在项目管理器中运行该文件: 在项目管理器中选择“其他”选项卡,然后从“菜单”中选择 “gxglxt”,再单击【运行】。运行的结果格式如下:
在“快速菜单”中通过【插入】、【删除】或修改得到所要求的菜单格 式。
例如,如果要在“帮助”菜单前插入“客户”菜单,可以选 择与“帮助”菜单行,再选择“插入”按钮,然后在“菜单名称” 栏中键入“客户”,其结果如图 。
移 动 按 钮
注意:拖动移动按钮可以改变菜单栏上各菜单的位置。 如果需要“帮助”菜单,应将它安排在菜单栏上的最后,这 样用户能够很快找到它。 在应用程序中使用菜单之前,必须将它生成。
步 骤
(1)规划和设计菜单系统:确定需要哪些菜单、出现 在界面的何处以及哪几个菜单要有子菜单等等。 (2)建立菜单项和子菜单:使用菜单设计器来定义菜 单标题、菜单项和子菜单,为菜单和菜单项设置对话 框方式和快捷键方式。 (3)指定菜单项的任务:按实际要求为各菜单项指定 任务。例如,执行一个命令或调用一个过程。 (4)生成和运行菜单:菜单定义好后保存在一个 以.mnx为扩展名的菜单文件和一个以.mnt为扩展名 的菜单备注文件中。菜单文件需生成扩展名为.MPR 的菜单程序文件才能运行。
创建菜单
规划好菜单系统之后,就可以使用菜单设计器创建该系 统了。这时,可以创建菜单、快捷菜单、菜单项、子菜单 和菜单项组之间的分隔线等等。
1、创建菜单
按前述方法打开“菜单设计器”。
“菜单设计器”中选项说明
“菜单名称”:在菜单系统中指定菜单标题和菜单项的名称。 “结果”:指定在选择菜单标题或菜单项时发生的动作。例如, 可执行一个命令,打开一个子菜单或运行一个过程。 “创建”:在“结果”项中选择“子菜单”或“过程”时,用 于指定菜单标题或菜单项的子菜单或过程。 “编辑”:在创建了“子菜单”或“过程”后,可以更改与菜 单标题或菜单项相关的子菜单或过程。 “选项”:显示“提示选项”对话框,可以在其中定义键盘快 捷键和其它菜单选择。 “菜单级”:弹出下拉菜单,让用户选择要处理的菜单或子菜 单。 “预览”:显示正在创建的菜单的预览结果。 “插入”:在“菜单设计器”窗口中插入新的一行。 “插入栏”:显示“插入系统菜单条”对话框,使用户可以插 入标准的VFP菜单项。

第八章 菜单设计与制作

第八章 菜单设计与制作

2、图形化、人性化、直观化——在预定、接待和 、图形化、人性化、直观化 在预定、 在预定 收银这三个界面里,都能显示酒楼实际的台位布置, 收银这三个界面里,都能显示酒楼实际的台位布置, 并且以不同的颜色来实时显示台位的预定、 并且以不同的颜色来实时显示台位的预定、开单或 用餐的情况。 用餐的情况。 3、上传速度快、使用效率高——可以多个上传机 、上传速度快、使用效率高 可以多个上传机 同时上传,且上传速度非常快, 同时上传,且上传速度非常快,系统自动识别后在 厨房打印机分单打印出来,并不会产生混乱。 厨房打印机分单打印出来,并不会产生混乱。
特殊食谱----杨利伟的太空食谱 特殊食谱 杨利伟的太空食谱
“神舟”五号的发射成功是中国人的又一个骄傲,而中国 神舟”五号的发射成功是中国人的又一个骄傲, 首位宇航员杨利伟的太空生活也同样成了我们关注的话题。 首位宇航员杨利伟的太空生活也同样成了我们关注的话题。 据了解,杨利伟的一日三餐都是营养学家制定的, 据了解,杨利伟的一日三餐都是营养学家制定的,有20多 多 种食品可供选择, 晚三餐,三天之内不会重样。 种食品可供选择,早、中、晚三餐,三天之内不会重样。食 品为各种罐头和复水食品,米饭、 品为各种罐头和复水食品,米饭、水果都以真空脱水状态储 使用前可以复水,也可以用加热设备加热。 存,使用前可以复水,也可以用加热设备加热。杨利伟的太 空食谱如下: 空食谱如下: 主食: 主食:鱼香肉丝 、宫保鸡丁 、陈皮牛肉 、酱牛肉 、墨鱼丸 、 牛肉丸、 莲子粥、 牛肉丸、八宝饭 、 莲子粥、 饮料:绿茶、 饮料:绿茶、用中药及滋补品制成的饮料 所谓“航天食品” 所谓“航天食品”,一般是指专供航天员在太空执行任务时 和返回着陆等待救援期间食用的食品、饮水。有重量轻、 和返回着陆等待救援期间食用的食品、饮水。有重量轻、体 积小、营养好三大特点。 积小、营养好三大特点。

第8章菜单设计与应用

第8章菜单设计与应用
2.打开要加载菜单的表单,在表单的属性窗口中 设置ShowWindow 属性为“2-作为顶层表单”, 设置表单为顶层表单。
8.2.2 为顶层表单添加菜单
3. 在表单对象的Init事件代码窗口中输入以 下命令用以调用菜单程序,格式如下: DO menu 菜单名 WITH this [,"菜单名"]
“菜单名”指定被调用的菜单程序文件, 其扩展名“.mpr”不能省略。THIS表示当前 表单对象的引用。通过“菜单名”可以为 被添加的下拉式菜单的条形菜单指定一个 内部名字。
用Visual FoxPro提供的菜单设计器可 以方便地设计下拉式菜单。
8.2.1 菜单设计的基本步骤
菜单设计器是用于创建和设计菜单的可 视化工具,功能强大,界面友好,使用方便。
用菜单设计器设计下拉式菜单的基本过 程包括:
1.调用菜单设计器; 2.定义菜单(生成菜单文件,扩展名 为.mnx,.mnt); 3.生成菜单程序文件(扩展名为.mpr); 4.运行菜单程序。
2.保存菜单定义文件,为快捷菜单命名,然后 选择“菜单”|“生成”命令,弹出“生成菜单”对 话框,单击“生成”按钮,即生成菜单程序文件。
快捷菜单创建好后,必须将其与对象相关联 才能使用,具体操作如下:
1.打开表单设计器,选择需使用快捷菜单的对象。
2.在所选对象的RightClick事件代码中输入以下 命令:
(2)菜单的修改
“菜单设计器”除了列表框窗口之外,还有以下按钮。
1)“插入”按钮:在“菜单设计器”窗口中,插 入一个新的菜单项行。
2)“插入栏”按钮:可在“插入系统菜单栏”对 话框中,插入系统菜单栏:新建、打开、关闭、 保存等。
3)“删除”按钮:可在“菜单设计器”窗口中, 删除当前行。

2019年第8章菜单和工具栏设计.ppt

2019年第8章菜单和工具栏设计.ppt


操作步骤: ① 在项目管理器的"其他"选项卡中,选择"菜单"选项, 新建菜单。 ② 在"菜单设计器"窗口下,单击"菜单"中的"快速菜单" 命令,系统自动创建一个包含系统菜单项的菜单。 ③ 选择某一菜单选项,例如“窗口”菜单项,单击 “编辑”按钮,显示该菜单项所对应的内部名字。 ④ 在菜单项的"选项"栏标有"√"标记,表示该菜单包含 快捷方式。单击"√"按钮,打开"提示选项"对话框,可 以查看或定义快捷方式。例如,"命令窗口"菜单对应 的快捷方式为Ctrl+F2。 ⑤ 保存所创建的快速菜单。 操作完后,演示结果,总结出操作步骤,让学生按总 结出的操作步骤进行练习。
导入新课: 1、定义工具栏的步骤: 由教师提示并讲解如下知识点: 定义工具栏一般按下面4个步骤操作。 (1)定义工具栏类 (2)在自定义工具栏类中添加对象 (3)定义对象操作 (4)在表单集中添加工具栏 2、创建工具栏 教师按如下要求演示操作步骤,学生观察。
*创建如下图所示工具栏


操作步骤
① 在"项目管理器"窗口中,选择"类"选项卡,新建一 个类,类名为"NewTool",派生于"Toolbar",存储于 "MyClass.vcx"中。 ② 在"类设计器"窗口中,打开"表单控件"工具栏,在 工具栏类上添加控件对象,如添加命令按钮。 ③ 设置控件对象属性。打开"属性myclass.vcx(newtool)"对话框,设置各命令按钮的 Caption属性或Picture属性。例如,设置第1个命令按钮 的Picture属性,在命令按钮上显示一个"新建"位图,该 位图的位置为"vfp98\wizards\graphics\new.bmp"。 ④ 重复上述步骤③,设置其他按钮的Picture属性。 ⑤ 给各个按钮对象定义操作。例如,设置"新建"按钮 的Click属性代码为"CREATE","保存"按钮的Click属 性代码为"USE"。 ⑥ 保存创建的工具栏类。 教师总结以上操作步骤,让学生按要求进行练习。

第八章 菜单

第八章 菜单

例8 - 1
建立一个菜单filemenu,包括两个菜单项 , 建立一个菜单 文件” 帮助” 文件” “文件”和“帮助”,单击 “文件”将激活 子菜单,该子菜单包括“打开” 保存” 子菜单,该子菜单包括“打开”、“保存”和 关闭”三个菜单项; 关闭”子菜单项用SET 关闭”三个菜单项;“关闭”子菜单项用 SYSMENU TO DEFAULT命令返回到系统菜 命令返回到系统菜 命令 其他菜单的功能不作要求。 单,其他菜单的功能不作要求。
2.设置主文件
主文件:启动应用程序时先被调用的文件, 主文件:启动应用程序时先被调用的文件,也 是应用程序的入口点。( 。(项目管理器中用黑体 是应用程序的入口点。(项目管理器中用黑体 显示) 显示) 一个典型的数据库应用程序由数据结构、 一个典型的数据库应用程序由数据结构、用 户界面、主程序、子程序、 户界面、主程序、子程序、查询选项和报表等 组成。在设计应用程序时, 组成。在设计应用程序时,应仔细考虑每个组 件提供的功能以及与其他组件之间的关系。 件提供的功能以及与其他组件之间的关系。
创建菜单系统的步骤:
1.规划菜单系统。 .规划菜单系统。 2.创建菜单和子菜单。 .mnx .创建菜单和子菜单。 3.为菜单系统指定任务。 .为菜单系统指定任务。 4.生成菜单程序。 .mpr .生成菜单程序。 5.运行生成的菜单程序,测试菜单系统。 .运行生成的菜单程序,测试菜单系统。
8.1.1 规划菜单系统
8.1.5 Байду номын сангаас顶层表单中添加菜单
建立如图所示顶层表单, 例8-3、建立如图所示顶层表单,表单文件名为 topform.scx,表单控件名为 ,表单控件名为topform,表单标题 , 顶层表单” 为顶层表单建立菜单mymenu。 为“顶层表单”。为顶层表单建立菜单 。 菜单栏如图所示(无下拉菜单),单击"退出 ),单击 退出” 菜单栏如图所示(无下拉菜单),单击 退出”菜 单时,关闭释放此顶层表单, 单时,关闭释放此顶层表单,并返回到系统菜单 在过程中完成)。 (在过程中完成)。

8菜单设计

8菜单设计

定义菜单
“结果”列 ③子菜单:当选择此项时,单击其后的“创建”按钮可进 入新的一屏来创建子菜单。如果当前菜单项已经有子菜单, 选中该项后,单击其后的“编辑”按钮可进入新的一屏来 编辑设计该子菜单。 ④填充名称:当选择此项时,可以在其右侧的文本框中输 入一个名字,为菜单标题指定在菜单系。 ⑤菜单项#:当选择此项时,可以在其后的文本框中为这 个菜单项指定一个系统菜单中的菜单项,即把系统菜单项 挂在这个应用菜单中。
运行菜单程序
定义菜单
在“菜单设计器”窗口中定义菜单,指定菜单的各项内容, 如菜单项的名称、快捷键等。 指定完菜单的各项内容后,应将菜单定义保存到.mnx文件中。 方法是单击“常用工具栏”中的保存按钮或按Ctrl+W组合键。
生成菜单程序
菜单定义文件存放着菜单的各项定义,但其本身是一个表 文件,并不能运行。这一步就是要根据菜单定义产生可执 行的菜单程序文件(.mpr文件), 方法是:在菜单设计器环境下,选择“菜单”菜单中的 “生成”命令;然后在“生成菜单”对话框中指定菜单程 序文件的名称和存放路径;最后单击“生成”按钮。
例题
利用菜单设计器建立一个下拉式菜单,具体要求如下: (1)菜单栏菜单的菜单项包括:信息录入、借书还书、数据 查询、退出。访问键分别是“I”、“J”、“C”和“Q”。 (2)当用户选择“信息录入”,将打开一个子菜单,显示 “读者管理”和“图书管理”两个菜单项,其对应的操作分别是执 行“读者”表单和执行“图书”表单。为“图书管理”菜单项指定 一个快捷键CTRL+B。 (3)“借书还书”菜单项所对应的操作是执行“借书还书” 表单。 (4)当用户选择“数据查询”,将打开一个子菜单,显示 “图书查询”、“借阅查询”和“逾期图书统计”三个菜单项。其 对应的操作分别是执行“图书查询”表单、执行“借阅查询”表单 和执行“逾期图书.frx”报表。 (5)“退出”菜单项所对应的操作是退出VFP。
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(3)删除子菜单(“编辑”)
可以利用CMenu的成员函数 DeleteMenu.删除指定菜单项,或者弹 出菜单。 有以下两种情形: (a)如果用菜单栏的指针GetMenu()调用 DeleteMenu,删除的是弹出菜单, (b)如果你用子菜单GetSubMenu的指针, 调用DeleteMenu,删除的是菜单项。
第十二章 菜单设计
12.1.菜单 • 菜单是用户与应用程序交互的最常用手段。 • 菜单存放在资源脚本中,在程序运行时调用。 • 一个菜单项必须包含两部分: –菜单项名称——字符串构成,例如:file –菜单项标识符ID——整数值,可用整数常量表 示 • 菜单标识符ID在资源的头文件Resource.h中定义, 例如前缀IDM指明是菜单项,如: #define IDR_MENU1 129 • 在菜单资源,必须链接到类中,通过提供类方法 来处理每个菜单项。
12.2. 菜单结构
• 菜单模板用一种很简单的结构在资源脚本文件 中定义,一个菜单资源模板实例如下:
IDR_MENU1 MENU DISCARDABLE BEGIN POPUP "&File" BEGIN MENUITEM "&Voice", MENUITEM "&Show", MENUITEM SEPARATOR MENUITEM "&Exit", END POPUP "&Help" BEGIN MENUITEM "&About", END
在其他的弹出菜单增加菜单项 : GetMenu()->GetSubMenu(要增加菜单项 的那个菜单的索引号)>AppendMenu(MF_STRING,114,"Mybol e"); 在其他的弹出菜单,它的菜单项之间增加 菜单项 : GetMenu()->GetSubMenu(0)>InsertMenu(ID_FILE_OPEN,MF_STRI NG | MF_BYCOMMAND,115,"Mybole123");
IDC_VOICE_MENU IDC_SHOW_MENU
IDC_EXIT_MENU
IDC_ABOUT_MENU
//定义File菜单 //菜单File定义开始 //菜单项 //菜单项 //分隔线 //菜单项 //菜单File定义结束 //定义Help菜单 //菜单Help定义开始 //菜单项 //菜单Help定义结束
(见例MFC_Menu2) 在CMainFrame::OnCreate中添加以下代码: CMenu menu; menu.CreatePopupMenu();//创建一个空的 弹出菜单 GetMenu()>AppendMenu(MF_POPUP,(UINT)menu.m _hMenu,“TEST2"); //获取菜单栏指针,然后将弹出菜单增加到现 有菜单的后面,MF_POPUP表示下拉式菜单或 子菜单的句柄。 menu.Detach();//将菜单句柄和c++对象断开, 这样CMenu定义的局部变量在析构的时候, 它就不会销毁菜单
MF_BYCOMMAND:表示uPosition给出 菜单项的标识符。如果MF_BYCOMMAND和 MF_BYPOSITION都没被指定,则 MF_BYCOMMAND为缺省的标志。 MF_BYPOSITION:表示uPosition给出新 菜单项基于零的相对位置。如果uPosition为 OxFFFFFFFF新菜单项追加于菜单的末尾。 (d) uIDNewltem:指定新菜单项的标识符, 或者当参数uFlags设置为MF_POPUP时,指定 下拉式菜单或子菜单的句柄。 (e) LpNewltem:指定新菜单项的内容。其 含义依赖于参数UFlags是否包含标志 MF_BITMAP,MF_OWNERDRAW或 MF_STRING。
例2创建右键弹出菜单 1 首先在资源里编辑一个新的菜单。 2 既然你是右键点击之后弹出菜单,所以第一步就要 捕获右键点击的消息WM_RBUTTONDOWN(在 view类)。 3 在右键点击的消息响应函数OnRButtonDown中添 加如下代码:(见例MFC_MENU2)
CMenu menu; menu.LoadMenu(IDR_MENU1);//加载你新建的菜单资源 CMenu *pPopup=menu.GetSubMenu(0);//获取子菜单,当 然对于弹出菜单,它只有一个菜单项 ClientToScreen(&point);//客服区坐标转换成屏幕坐标 pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y,this); //创建右键弹出菜单
CMenu menu; menu.CreatePopupMenu();//创建一个空的弹出菜单 GetMenu()->InsertMenu(2,MF_BYPOSITION | MF_POPUP,(UINT)menu.m_hMenu,"字号"); menu.AppendMenu(MF_STRING,111,"一号"); //第一个参数指明,要增加的类型是菜单项;第二个参数为 菜单项ID,可以随意填写数值;第三个参数为它名称 menu.AppendMenu(MF_STRING,112,"二号"); //增加菜单项 menu.AppendMenu(MF_STRING,113,"三号");//同上 menu.Detach(); CMenu menu3; menu3.CreatePopupMenu();//创建一个空的弹出菜单 GetMenu()->InsertMenu(3,MF_BYPOSITION | MF_POPUP,(UINT)menu3.m_hMenu,"字体"); menu3.AppendMenu(MF_STRING,116,"宋体");
END
12.3. CMenu类 • CMenu类是Cobject类直接派生的。
• CMenu类提供了许多处理菜单和菜单项的方法: – 构造方法; – 菜单操作方法; – 菜单项操作方法; – 虚拟方法。
• 构造方法用于建立Windows菜单,并在运行时将 它们附加到CMenu对象上,
表 12-1 CMenu 的构造方法 方法 说明 Attach() 把一个标准的 Windows 菜单句柄附加到 CMenu 对象上 CreateMenu() 创建一个空菜单并把它附加到 CMenu 对象上 CreatePopupMenu() 创建一个弹出式菜单并把它附加到 CMenu 对象上 DeleteTempMap() 删除由 FromHandle()构造函数创建的任何临时 CMenu 对象 DestroyMenu() 去掉附加到 CMenu 对象上的菜单并释放该菜单占有的任何内存 Deatch() 从 CMenu 对象上拆开 Windows 菜单句柄并返回该句柄 FromHandle() 当给定 Windows 菜单句柄时,返回 CMenu 对象指针 GetSafeHmenu() 返回由 CMenu 对象封装的菜单句柄成员(m_hMenu) LoadMenu() 从可执行文件装入菜单资源并把它附到 Cmenu 对象上 LoadMenuIndirect() 从内存中的菜单模板中装入菜单并把它附到 CMenu 对象上
• 菜单操作方法用于处理菜单的顶层操作,只有两 个方法: – DeleteMenu()删除指定的菜单项(包括附属的 菜单项); – TrackPopupMenu()在一个指定的位置显示一 个快捷菜单。

• 菜单项操作方法有多种用于处理指定菜单项操作
手动创建菜单实例:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) {…… MyMenu1.CreateMenu(); MyMenu1.AppendMenu(MF_STRING,IDM_ITEM0,"红色"); MyMenu1.AppendMenu(MF_STRING,IDM_ITEM1,"绿色"); MyMenu1.AppendMenu(MF_STRING,IDM_ITEM2,"黄色"); MyMenu1.AppendMenu(MF_SEPARATOR,IDM_ITEM3,""); MyMenu1.AppendMenu(MF_STRING,IDM_ITEM4,"无色"); MyMenu0.CreateMenu(); MyMenu0.AppendMenu(MF_POPUP,(UINT)MyMenu1.m_h Menu,"颜色"); this->SetMenu(&MyMenu0);
(ii)纯代码创建 (1)添加弹出菜单(子菜单) 函数功能:该函数在指定的菜单条、下拉 式菜单、子菜单或快捷菜单的末尾追加一个 新菜单项。 此函数可指定菜单项的内容、外观和性能。 函数AppendMenu己被lnsertMenultem取代。 但如果不需要lnsertMenultem的扩展特性, 仍可使用AppendMenu。 函数原型:BOOL AppendMenu (hMenu hMenu,UINT uFlags,UINT uIDNewltem,LPCTSTR lpNewltem );
插入菜单项目的两个函数: (a) lnsertMenultem()函数 该函数在菜单的指定位置插入一个新菜单项。 函数原型:BOOL WINAPI InsertMenuItem(HMENU hMenu,UINT ultem,BOOL fByPosition, LPMENUITEMINFO lpmii ); (b) AppendMenu ()函数 : 函数功能:该函数在指定的菜单条、下拉式菜单、子菜 单或快捷菜单的末尾追加一个新菜单项。此函数可指定 菜单项的内容、外观和性能。。 函数原型:BOOL AppendMenu(hMenu hMenu, UINT uFlags,UINT uIDNewltem,LPCTSTR lpNewltem);
相关文档
最新文档