对话框与菜单
宋 洁
2001年 1月 8日
对话框与菜单设计的作用
? 软件的基本作用是将有限的输入经过加
工以有限的输出提供给用户,输入和输
出在可视化语言迅猛发展的时代,就是
所谓人机交互界面。
? 在可视化程序设计语言中人机交互实现
的工具就是窗体和相应的控件,其表现
形式就是对话框和菜单。
本章主要内容
对话框和菜单的本质是窗体对象。 VB编程语言中根
据软件设计中常用的窗体按实现的功能和表现形式不同
进行组织,构造了部分窗体已提高编程的效率。对话框
和菜单是这些特制窗体的一部分。
1,对话框:由标签控件和少量的文本控件和命令控
件构成,以完成特定的功能。按照功能的不同分为:
预定义对话框、通用对话框和自定义对话框三种。
2,菜 单:主要由的命令控件构成,实现功能操作的
可视化。
一、预定义对话框
? 系统定义的对话框
? 不需考虑设计、装载或显示方面的问题
? 通过函数调用直接显示对话框(模式对话框)
? 缺点:外观受限,用户不能自由定制。
? 分类:“输入”对话框,“消息”对话框。
? 示例:运行
对话框
二、通用对话框
? 实现常用功能的标准对话框。包括:
打开 (Open)、另存为 (Save As)、颜色 (Color)、字体
(Font)、打印机 (Printer)、帮助( Help)
? 不是系统自带的对话框,是控件的一种。
? 调用形式,1、在窗体加载通用对话框控件
2、确定控件的属性和方法
? 实现方法:
“工程”菜单,部件”命令 选中
,Microsoft Common Dialog Control 6.0” 确定
以后的操作与常用控件的使用方法类似
通用对话框的属性和方法
1、属性
( 1) Action属性
通过赋值直接决定打开那种对话框
( 2) DialogTitle属性
该属性示对话框标题属性,可以是任意字符串
( 3) CancelError属性
决定用户在按下“取消”按钮时是否产生错误信息
2、方法
功能描述 Action属性值 方法
无对话框 0
显示打开对话框 1 ShowOpen
显示另存为对话 2 ShowSave
显示颜色对话框 3 ShowColor
显示字体对话框 4 ShowFont
显示打印机对话 5 ShowPrinter
显示帮助对话框 6 ShowHelp
3、通用对话框应用示例
1),打开”对话框的应用
2),另存为”对话框的应用
3),颜色”、“字体”对话框
三、自定义对话框
?用户根据所开发软件系统定制一些窗体对象
?满足特定软件开发的需要
?调用形式:用户自定义调用
?优点,灵活性强
?构建“自定义”对话框的方法:和一般窗体构造方法相同只
是锁定窗体的部分方法或属性,可以在已有的窗体上修改获
得,也可新建。
?示例
构建“自定义”对话框的方法
1、修改有的对话框
?,工程”菜单,添加窗体”命令,现存”标
签 选定现存的窗体
? 根据需要定义窗体的外观及事件过程
2、创建新的对话框
?,工程”菜单,添加窗体”命令,窗体”
按钮
? 为对话框定义事件过程
菜 单
? 菜单编辑器及其属性
选取要添加菜单的窗体,工具”菜单 (或
鼠标右键) 单击“菜单编辑器”
? 菜单编辑器使用
? 快捷方式菜单设计
? 菜单设计应用示例
菜 单 编 辑 器
复选
? Checked 属性。
? 允许在菜单项的左边设置复选标记。通
常用它来指出切换选项的开关状态。
可见
? Visible 属性。
? 通过选取被标记 Visible的复选框,可以
设置菜单控件的属性 Visible的初值。运
行时,使菜单控件可见或不可见
有效
? Enabled 属性。
? 通过选取被标记 Enabled的复选框,可以
设置菜单控件的属性 Enabled 的初值。运
行时,使菜单命令有效或无效
名称
? Name 属性。
? 输入菜单控件名。控件名是标识符,仅
用于访问代码中的菜单项;它不出现在
菜单中。
索引
? Index 属性。
? 数值:指定一个数字值来确定控件在控
件数组中的位置。该位置与控件的屏幕
位置无关。
命令键
右箭头:把选定的菜单向右移一个等级,最多创建四个子菜单等级
左箭头:把选定的菜单向上移一个等级,可创建四个子菜单等级。
上箭头:把选定的菜单项在同级菜单内向上移动一个位置。
下箭头:把选定的菜单项在同级菜单内向下移动一个位置。
下一个:将选定移动到下一行
插 入:在列表框的当前选定行上方插入一行。
菜单列表:列表框显示菜单项的分级列表。将子菜单项缩进以指出它们的分
级位置或等级。
?,确定”
关闭菜单编辑器,并对选定的最后一个窗体进行修改。菜单可以在设计
时使用,但在设计时可以通过选定一个菜单,来打开菜单单击事件的
“代码”窗口,而不是执行事件代码。
标 题 选 项
? Caption 属性
? 使用该选项可以输入菜单名或命令名,这些名字出现在菜单条或
菜单之中。
? 在菜单中建立分隔符条:在标题框中键入一个连字符 (-)。
? 通过键盘访问菜单项实现:在一个字母前插入 & 符号。
在运行时,该字母带有下划线( & 符号是不可见的),按 ALT
键和该字母就可访问菜单或命令。
注:如果要在菜单中显示 & 符号,则应在标题中连续输入两个 & 符
号。
菜单编辑器使用
1、显示菜单编辑器
2、创建菜单控件
3、创建分隔菜单项
4、创建访问键
5、创建快捷键
显示菜单编辑器
? 从“工具”菜单上,选取“菜单编辑
器”。
- 或者 -
? 在“工具栏”上单击“菜单编辑器”按
钮。
创建菜单控件步骤
1、选取该窗体
2、从“工具”菜单中,选取“菜单编辑器”。
3、在“工具栏”上单击“菜单编辑器”按钮。
4、在“标题”文本框中,为第一个菜单标题键入希望在菜单栏上显示的文本。如果
希望某一字符成为该菜单项的访问键,也可以在该字符前面加上一个 (&) 字符。
在菜单中,这一字符会自动加上一条下划线。
5、菜单标题文本显示在菜单控件列表框中。
6、在“名称”文本框中,键入将用来在代码中引用该菜单控件的名字。
7、单击向左或向右箭头按钮,可以改变该控件的缩进级。
8、选取“下一个”就可以再建一个菜单控件。或单击“插入”可以在现有的控件之
间增加一个菜单控件。
9、可以单击向上与向下的箭头按钮,在现有菜单控件之中移动控件。
10、如果窗体所有的菜单控件都已创建,选取“确定”可关闭菜单编辑器。
创建分隔菜单项
分隔符条作为菜单项间的一个水平行显示在菜单上。在菜单项很多的菜单上,
可以使用分隔符条将各项划分成一些逻辑组。
创建步骤:
1、选取“插入”,在想要分隔开来的菜单项之间插入一个菜单控件。
2、在“标题”文本框中键入一个连字符 (-)。
3、设置“名称”属性。
4、选取“确定”,关闭菜单编辑器。
注意,虽然分隔符条是当作菜单控件来创建的,它们却不能响应 Click 事件,而且也
不能被选取。
快捷菜单
? 快捷菜单:是一个内含经常使用的命令菜单,
它是在窗体上浮动显示的菜单
? 快捷菜单的调用方式:
[object.]PopupMenu menuname[,flags[,x[,y[,boldcommand]]]]
? 快捷方式菜单的设计示例