1
第 7章 菜单与对话框
7.1 菜单编辑器
7.2 菜单项的控制
7.3* 菜单项的增减
7.4 弹出式菜单
7.5 通用对话框
2
7.1菜单编辑器
打开菜单编辑器的方法有
3种:
– ( 1)“工具”菜单
/“菜单编辑器”
(或,Ctrl+E)。
– ( 2)在“工具栏”上单击“菜单编辑器”
按钮。
– ( 3)用鼠标选中窗体后,单击鼠标右键,
在弹出菜单中选择
“菜单编辑器”选项并单击。
3
主菜单,Caption=“文件 (&F)”,访问键 =“F”(可用 Alt+F打开
“文件”菜单);
子菜单 1,Caption=“打开 (&O)”,访问键=,O“(其主菜单已打开时可用),快捷键=” Ctrl+ O”(其主菜单未打开时用);
子菜单 2,Caption="-",代表分隔线;
子菜单 3,Caption="另存为 (&A)… ",访问键= "A",快捷键=
"Ctrl+ S".
菜单的组成部分示例每个菜单项还有一个看不见的名称。
4
每一个 菜单项 实际上是一个 特殊的控件 (与 标签 比较相似)。
因此,每一个菜单项由一些属性来描述它的特性,这些属性是,Name,Caption,Enabled,
Visible,Checked,等。
每一个菜单项有事件,但只包含一个事件,即
Click事件,当用鼠标或键盘选中该菜单控件时,
将调用该事件过程。
菜单项没有方法。
菜单项的本质
5
菜单项的属性取值类型与含义表 7-1 菜单控件的主要属性属性名 属性值 属性的含义
Name 字符串 代码中用来引用菜单控件的名字
Caption 文本 是出在控件上的文本
Index 整型 在创建菜单控件数组时作为索引
Checked True / False 菜单上有否复选项标志
Enabled True / False 决定菜单项有效否 ( 失效变灰 )
Visible Boolean 决定菜单项可见否
6
7.1.3 创建菜单补例 7-a,创建下图所示菜单。
各菜单项的命名如下:
“格式”,mnuFormat;
“隶书”,mnuFont;
分隔线,mnuDiv
“倾斜”,mnuItalic
“加粗”,mnuBold
补例 7-b,在补例 7-a界面增加文本框,文本框中的字符格式由格式菜单控制。
7
7.3* 菜单项的增减
在程序中,菜单项的增减是通过 菜单控件数组 来实现的。
菜单控件数组就是具有 相同名称 的若干菜单项的集合,这些菜单项 共享同一事件 过程 。
8
创建菜单控件数组的方法创建菜单控件数组是通过对 名称、标题和 索引 属性的设置来完成的
( 1)打开菜单编辑器,输入一个菜单项。
( 2)将该菜单项“索引”项属性设置为 0,
然后加入名称相同、索引项相邻的菜单项。
例 7-3 菜单项的增减演示。
9
7.4 弹出式菜单
弹出式菜是独立于菜单栏而显示在窗体上的浮动菜单;一般要求在按下鼠标右键时出现。
创建弹出式菜单,在“菜单编辑器” 中,不选中“可见”
复选框( Visible= False);
显示弹出式菜单:
[Object.] PopupMenu MenuName[,flags[,x[,y[,boldcommand]]]]
PopupMenu,关键词,弹出菜单的 方法名 ;
Object,要出现弹出菜单的 当前对象名称;
MenuName:被弹出的 菜单项的名称。
flags,参见表 7-5
x,y,位置坐标
Boldcommand:需要用粗体显示的菜单项名称例 7-4 在例 7-3基础上设计一个弹出式菜单,当右击窗体时弹出。
10
7.5 通用对话框
ActiveX控件 CommonDilalog为 通用对话框,用户可以利用它创建六类对话框:打开文件、保存文件、设置字体、设置颜色、设置打印机、帮助。
将通用对话控件添加到工程的方法:
选择菜单命令,工程 /部件 /Microsoft Common Dialog
Control 6.0 (SP6)”,将通用对话框加载到工具箱中。
设计时,通用对话框在窗体上显示成一个图标,其大小不能改变,在程序运行时它不可见。控件加载后,
打开其属性窗口或单击 F4键,则弹出属性页 。
11
决定通用对话框的类型 ---Action属性或 showX方法
Action属性返回或设置被显示的对话框的类型,
Object.Action [=Value]
Show方法:
Object.ShowX
其中 X可以是:
Open,Save,Color,Font,
Printer,Help
表 7-7 Action属性的设置含义
Value 描述
0 没有操作
1 显示,打开,对话框
2 显示,另存为,对话框
3 显示,颜色,对话框
4 显示,字体,对话框
5 显示,打印,对话框
6 运行 WinHelp.exe
12
文件对话框
文件对话框具有 2种模式:
– Save模式用于“保存”文件;
– Open模式用于“打开”文件。
文件对话框基本组件包括:
– Drive/Folder列表。表示当前文件夹。
– File/Folder选择。当前文件夹中的文件项。
– File Name文本框。在文本框中输入 /选择所需文件
– File Type列表框。选择显示的文件类型。
– 命令按钮。使用户改变文件夹的级别、切换显示模式和创建新文件夹。
13
文件对话框的重要属性,
( 1) Action,文件对话框的类型;数值型。= 1(“打开”
文件对话框);= 2(“保存”文件对话框)。
( 2) DefaultExt:设置默认的文件扩展名。
( 3) DialogTitle,对话框标题栏内容;字符型。
( 4) Filter,文件类型过滤器;字符型。
( 5) Flags,框外观选项
( 6) InitDir:对话框中默认出现的文件路径;字符型。
( 7) FileTitle:不包括路径的文件名;字符型。
( 8) FileName:包括路径的文件名;字符型。
其中,Filter的规定形式是:
某框,Filter="描述词 1|*.扩展名 1|描述词 2|*.扩展名 2|…,"
例 7-5,设计文件“打开”对话框,并显示所选图片文件名。
其它对话框的产生和使用也参见 例 7-5。
14
7.5.2 颜色对话框
当用户在调色板中选择用于窗体或控件的前景色或背景色的颜色,或者自己创建颜色时,需要使用 Color对话框。
为了显示 Color对话框,必须首先设置 Color对话框的 F1ags属性为 cdlCCRGBInit,这样,可以使用控件的 Color属性返回选定的 RGB颜色值,然后用 ShowColor方法显示对话框。
15
7.5.3 字体对话框
Font对话框可以让用户选择字体,并设置相应的字体大小、
颜色、样式等属性。使用“字体”对话框时,必须首先设置对话框的 Flags属性,然后使用 ShowFont方法实际显示对话框。
F1ags属性值可以设置为如下 3种情况:
– cdlCFScreenFonts:屏幕字体。
– cdlCFPrinterFonts:打印机字体。
– cdlCFBoth:可以是屏幕字体,也可以是打印机字体。
16
表 7-8 与 Flags属性的相关属性设置属性名 描述 属性名 描述
Color
选择的字体颜色 。 当使用该属性时,必须将 Flags属性设置为
cdlCFEffects。
FontUnderline 选择的字体是否带有下划线 。
FontStrikethru 选择的字体是否带有删除线 。
FontBo1d 选择的字体是否为粗体 。 FontName 选择的字体名称 。
FontItalic 选择的字体是否斜粗体 。 FontSize 选择的字体大小 。
17
7.5.4 打印对话框
Print对话框可以使用户为打印输出选择打印机,并可设置打印进程的选项。
属性如下:
– Copys:设置或返回用户需要的打印拷贝数 c
– FromPage:打印起始页。
– ToPage:打印中止页。
– PrinterDefault:返回或设置一个选项,确定在“打印”对话框中的选择是否用于改变系统缺省的打印机设置。当设置为 True时,用户可以通过单击
Setup按钮来改变 Win.ini文件。