内容正文:
模块7
菜单、工具条与状态栏设计
学习目标
掌握菜单的设计
掌握工具条的设计
掌握状态栏的设计
任务1 设计菜单
任务要点
掌握菜单编辑器的使用
掌握下拉式菜单的设计和制作
掌握弹出式菜单的设计和制作
3
一、菜单应用
观察“文件”菜单,看看菜单由哪几部分组成?
1.菜单的组成
菜单系统通常有三个基本组成部分:
菜单栏:通常指位于窗口标题栏下方的矩形条状区域。菜单栏内包含若干个菜单标题。
菜单名称:通常指菜单栏中菜单的名称。每个菜单名称下有一个相对应的下拉列表。
菜单命令:通常指包含于菜单名称下拉列表中的各个选项,每个选项都是一个命令。当菜单命令被选中时,计算机就会执行相应的命令、过程或函数,若菜单命令下包含子菜单,则被选中的菜单命令将打开下一级菜单。
一、菜单应用
已修改 从第6页开始修改
5
2.菜单其他常用组成部分
子菜单:有的菜单命令的最右侧有一个“”标记,当单击这样的菜单命令时会打开下一次菜单,这样的菜单我们称作子菜单。子菜单中仍可包含下一级子菜单。
分割线: 分割线是将菜单中内容比较相近的菜单命令进行逻辑分组。
访问键:即为菜单名称右侧括号内带下划线的字符,我们在打开菜单时,除了可以单击菜单名称打开菜单外,还可以按住ALT+预先设定好的访问键来打开菜单。
一、菜单应用
已修改 从第6页开始修改
6
2.菜单其他常用组成部分
快捷键:有些菜单命令右侧有快捷键。快捷键用于快速执行相对应的菜单命令,只要按下快捷键,系统就会立即执行相应的菜单命令。快捷键优化了常用菜单命令的执行速度,大大提高了程序的可用性。
菜单命令复选标记:有些菜单命令表示的是一种开关状态,我们用菜单命令复选标记来表示其状态的打开或关闭的状态。
一、菜单应用
已修改 从第6页开始修改
7
二、下拉式菜单设计
案例7-1:设计一个游戏的下拉菜单,如下图。
“进入官网”菜单
“账户注册”菜单
“充值”菜单
“帮助”菜单
二、下拉式菜单设计
案例分析:这组菜单共包含了四个菜单名称,每个菜单名称下分别包含不同的菜单命令。我们通过菜单编辑器来制作这组下拉式菜单。
案例实施:
第一步:新建工程,设置窗体属性
在Form1【属性窗口】中设置【Caption】属性为“下拉式菜单设计”。
在Form1【属性窗口】中通过【Picture】属性加载图片“背景.jpg”作为窗体背景。
第二步:打开菜单编辑器
第三步:在菜单编辑器中设置菜单的属性
二、下拉式菜单设计
打开菜单编辑器有以下几种方法:
方法1 单击【工具】菜单中的【菜单编辑器】选项。
方法2 按Ctrl+E,快捷键。
方法3 单击工具栏中的【菜单编辑器】按钮。
方法4 右击窗体空白处,在弹出的快捷菜单中单击【菜单编辑器】选项。
小贴士
内容讲解:菜单编辑器主要选项说明
【标题】的功能:
相当于控件的Caption属性,是程序运行时显示在菜单上的说明文字。这个选项中的内容主要是提供给用户看的。此项为必填项。
【名称】的功能:
相当于控件的名称属性,这个选项中的内容是提供给计算机来识别控件使用的。名称项可以是简单的控件名称,也可以是控件数组的名称。控件数组元素必须是连续的且在相同的子菜单内。如果使用控件数组的名称,则需使用【索引】项配合来指定该菜单名称在数组中的顺序。此项为必填项。
二、下拉式菜单设计
内容讲解:菜单编辑器主要选项说明
【索引】的功能:
当菜单名称是控件数组中的元素之一时,就必须在【索引】中赋值进行区分。索引项中的赋值必须是整数值。
【快捷键】的功能:
当需要为菜单名称设置快捷键时,在【快捷键】下拉列表框中选择相应的快捷键即可。
【复选】的功能:
决定菜单命令的状态是开还是关,它对应的是Checked属性。该项被选中时, Checked属性的缺省值为False。
二、下拉式菜单设计
内容讲解:菜单编辑器主要选项说明
【有效】的功能:
用来设置某一菜单命令在程序运行时是否可用,即是否响应相应的事件。当【有效】复选框设置为√时,其相应的“Enabled”属性为True,其缺省值为True。单击【有效】复选框,则√消失,此时相应的“Enabled”属性为False,这是该菜单命令显示为灰色,表示该命令不可用。
【可见】的功能:
用来控制设置的菜单名称是否显示。当在“菜单编辑器”中时,其所对应的Visible属性为True,此时菜单命令可见;当【有效】复选框的√被去掉时,Visible属性为False,此时菜单命令不可见,该菜单命令不会出现在菜单名称中。
二、下拉式菜单设计
内容讲解:菜单编辑器主要选项说明
【】【】的功能:用来改变菜单的层级。使用【】可将菜单降低一个层级,降低后的菜单项前面出现一个内缩符号(四个点),每次单击一次降低一层。【】的作用正好相反,使用【】可将菜单提升一个层级,每单击一次提升一层。
【下一个】的功能:单击该按钮可以创建新的菜单控件。
【插入】的功能:单击该按钮可以在选中的菜单条目上方添加新的菜单控件。
【删除】的功能:单击该按钮可以删除选中的菜单控件。
二、下拉式菜单设计
添加分割线的方法:
“-”。在【名称】项中设置其名字如例子中的fengexian。
分割线本身不能作为菜单名称,它仅能起到分隔菜单命令的作用。它不能带有子菜单,不能进行“复选”、“有效”等属性的设置,也不能设置快捷键。但其【名称】属性必须设置。
设置访问键的方法:
在【菜单编辑器】中的【标题】选项中,在要设置访问键的字母前输入&符号,此时,菜单命令&后的字母底部就会出现下划线。在程序运行时,按Alt+访问键即可打开菜单。需要注意的是,菜单中不能使用重复的访问键。如果多个菜单名称使用同一个访问键,那么该键将不起作用。
小贴士
课堂小练手
7-1:仿照Visual Basic 6.0 的文件菜单制作一个下拉菜单。如右图
要求:
按照文件菜单建立所有的菜单命令
为菜单名称和菜单命令添加指定的访问键或快捷键
按需要添加指定的分割线
为相应的菜单命令设置非有效性
三、弹出式菜单设计
案例7-2:为游戏设计一个弹出式菜单,如图所示,要求当鼠标右击窗口时,指定的快捷菜单弹出。
案例分析:我们通过菜单编辑器和PopupMenu方法来实现弹出式菜单的制作。
三、弹出式菜单设计
案例实施:
第一步:新建工程,设置窗体属性
在Form1【属性窗口】中设置【Caption】属性为“弹出式菜单设计”。
在Form1【属性窗口】中通过【Picture】属性加载图片“背景.jpg”作为窗体背景。
在Form1添加Label控件,设置其【Caption】属性为“单击鼠标右键下载最新客户端”。
第二步:打开菜单编辑器,设置弹出式菜单属性
第三步:为弹出式菜单编写程序代码
内容讲解:
一般情况下,弹出式菜单是不显示的。程序运行时,每次只能显示一个弹出式菜单。若已经显示了一个弹出式菜单,则不再打开其他的弹出式菜单。我们需要使用PopupMenu方法来实现指定菜单的弹出。其语法格式是:
[对象].PopupMenu<菜单名称>[,Flags[,x[,y]]]
三、弹出式菜单设计
课堂小练手
7-2:制作一个简易加减运算器,利用弹出的菜单选择加法运算或减法运算。
操作提示:
使用文本框和标签框设计程序界面。
利用菜单编辑器添加“运算方式”菜单名称,该菜单下包含“加法”和“减法”两个子菜单。
任务2 设计工具条
任务要点
掌握【Toolbar】控件和【ImageList】控件的作用及添加方法
掌握工具条的创建方法
一、工具条应用
观察下图所展示的常用工具条和格式工具条,说说他们的组成部分有哪些。
工具条简介
工具条可以向用户提供菜单命令的图形表示,是Windows应用程序窗口的重要组成部分,使用工具条可以进一步增强使用应用程序的方便性。工具条可以看作是一组单击后可以执行常用操作的按钮。工具条既可以浮动在窗口中,有可以放在窗口的上、下部等其他位置。工具条包含的按钮通常与应用程序菜单中各项命令对应,工具条为用户访问应用程序的常用功能和命令提供了图形接口。
一、工具条应用
创建工具条的步骤
第一步:在窗体添加【ImageList】控件并在其中插入需要的图片
第二步:在窗体添加【Toolbar】控件,添加按钮并设置其属性
第三步:编写按钮对象的事件代码
一、工具条应用
创建工具条的控件
【ImageList】控件是Visual Basic6.0 专业版和企业版中用于创建工具条和图形工具按钮的控件。【Toolbar】控件用于创建工具条,【ImageList】控件用于为Toolbar等控件的按钮存放图像。利用这两个控件即可创建图形工具按钮了。
一、工具条应用
二、添加【工具条】控件
案例7-3:新建窗体,在窗体中添加【Toolbar】控件和【ImageList】控件。
案例分析: 【Toolbar】控件和【ImageList】控件是一种ActiveX控件,一般不在控件工具箱中显示。我们要想使用他们必须先将他们放入控件工具箱后,再进行使用。
案例实施:
第一步:在菜单栏上选择【工程】菜单中的【部件】选项,在弹出的对话框中,单击【控件】选项卡。
第二步:在列表中选择【Microsoft Windows Common Control 6.0】,单击【确定】按钮。
将【Toolbar】控件和【ImageList】控件添加到工具箱中。在工具箱中新增的控件。
二、添加【工具条】控件
Tooblar控件
ImageList
控件
内容讲解:
在Visual Basic中,除了为我们提供的工具箱中的内部控件之外,还为我们提供了一些其他控件。这些控件以单独的文件存在,文件的扩展名是.ocx。这类控件在使用要先将他们添加到工具箱中才能使用,我们称这类控件为ActiveX控件。
ActiveX控件是Visual Basic工具箱的扩充。ActiveX控件包含很多控件如工具栏(Toolbar)、数据组合框(DataCombo)等等。ActiveX控件可以是系统提供的,也可以是由第三方厂商提供的,当然还可以是用户自己开发的。使用ActiveX控件与使用其他内置控件的方法是相同的,在程序中加入ActiveX控件后,它就成为开发和运行环境的一部分,因此我们不需要特殊学习既能掌握其使用方法。
二、添加【工具条】控件
三、设计工具条
案例7-4:为窗体添加一个如图7-15所示的常用工具条。当单击工具条中的按钮时,弹出相应的信息框,如图所示。
30
三、设计工具条
案例7-4:为窗体添加一个如图7-15所示的常用工具条。当单击工具条中的按钮时,弹出相应的信息框。
案例分析:
使用【Toolbar】控件和【ImageList】控件制作工具条。
31
案例实施:
第一步:新建工程,设置窗体属性。
第二步:添加【ImageList】,设置【ImageList】控件属性。
第三步:添加【Toolbar】控件,设置【Toolbar】控件属性。
第四步:编写按钮代码。
三、设计工具条
修改已经设置好的工具条按钮属性该如何操作。
若在程序制作过程中发现为工具条按钮已经设置好的属性需要更改,则需在工具条单击鼠标右键,在弹出的快捷菜单中选择【属性】项,打开【属性页】对话框,选择【按钮】选项卡,单击【索引】文本框后的 按钮,通过按钮索引号来找到需要修改按钮的属性页来修改属性。
小贴士
内容讲解:
可以在Toolbar属性页Buttons中设置新加入的按钮的属性。这些属性包括:索引(Index)、标题(Caption)、描述信息(Description)、关键字(Key)、值(Value)、样式(Style)、宽度(Width)、提示信息(ToolTipText)等。
三、设计工具条
内容讲解:
索引和关键字
Toolbar中的按钮是通过集合Buttons来访问的。集合中每个按钮都有唯一与之对应的标识,【索引(Index)】和【关键字(Key)】就是与按钮一一对应的标识。【索引】是整数类型的,类似于数组的下标。【关键字】是字符串类型的类似于对象的名字,但它与名字不同的是引用时必须加双引号,并且它中间可以包含任意的字符。按钮的关键字属性是可选的,可以为空。访问按钮时可以引用索引和关键字二者之一。例如,在名为Toolbar1的Toolbar中加入按钮,其索引为1,关键字设置为“dakai”。在程序中可以通过以下两种方式之一访问该按钮:
Toolbar1.Buttons(1) 或 Toolbar1.Buttons("dakai")
三、设计工具条
内容讲解:
标题
标题属性对应按钮上显示的文本,与普通按钮的Caption属性相同。
提示信息和描述信息
【提示信息(ToolTip Text)】和【描述信息(Description)】都是字符串类型,用于设置按钮的提示文本和描述信息。设置了【ToolTipText】后,程序启动运行后,当用户把鼠标指针移到按钮上时,【ToolTipText】对应的文本字符串自动浮出。该属性用于在程序运行时提示用户按钮的功能。程序启动运行后,用户双击工具条对其中的内容进行裁剪时,对话窗中每个按钮旁边显示的是按钮的Description属性。
三、设计工具条
内容讲解:
【样式】属性设置按钮的模式,不同样式的按钮具有不同的风格和作用。可供选择的【样式】属性有以下5种:
0-tbrDefault,一般按钮
1-tbrCheck,开关按钮
2-tbrButtonGroup,编组按钮
3-tbrSeparator,分隔按钮
4-tbrPlaceholder,占位按钮
值Value
【值】属性设置按钮的按下和放开状态。该属性一般用于设置开关按钮和编组按钮的初态。
宽度Width
在属性页的Buttons组中可以看到,Width属性后有一个文本框。只有当按钮的【样式】设置为4-Placeholder时,该属性才能被设置,其它情况下该属性被禁止。
三、设计工具条
课堂小练手
7-3:制作如图的简易文本编辑器。
要求:
窗体中含有一个文本框,一个工具条。工具条上包含“剪切”、“复制”、“粘贴”三个按钮,当鼠标停留在工具条按钮处,能显示相关的提示文本。
给工具条上的三个按钮编写代码,实现每个按钮的功能。
任务3 状态栏设计
任务要点
掌握【StatusBar】控件的作用及添加方法
掌握状态栏的创建方法
一、添加【状态栏】控件
案例7-5:新建窗体,在窗体中添加【StatusBar】控件。
案例分析: 【StatusBar】控件也是一种ActiveX控件,我们要先将其添加到控件工具箱后,再进行使用。
StatusBar控件
案例实施:
在菜单栏上选择【工程】菜单中的【部件】选项,在弹出的对话框中,单击【控件】选项卡,在列表中选择【Microsoft Windows Common Control 6.0】,单击【确定】按钮。就完成了在工具箱中添加【StatusBar】控件。
一、添加【状态栏】控件
内容讲解:
创建状态栏的步骤一般分为三步:
第一步:在窗体添加【StatusBar】控件
StatusBar控件
第二步:使用【StatusBar】控件来设计状态栏并设置状态栏的属性。
第三步:编写相应的事件代码
一、添加【状态栏】控件
二、设计状态栏
案例7-6:为窗体添加一个三窗格状态栏。当运行程序时在状态栏的第一个窗格显示相应的文字。如下图所示。
案例分析:使用【StatusBar】控件制作状态栏。
案例实施:
第一步:新建工程,设置窗体属性
在Form1【属性窗口】中设置【Caption】属性为“设计状态栏”。
在Form1【属性窗口】中通过【Picture】属性加载图片“背景.jpg”作为窗体背景。
二、设计状态栏
案例实施:
第二步:设置【StatusBar】控件【窗格】选项卡
双击工具箱中的【StatusBar】控件,在窗体添加【StatusBar】控件。
右键单击窗体的【StatusBar】控件,在弹出的快捷菜单中选择【属性】项,打开【属性页】对话框,选择【窗格】选项卡如图7-25所示。单击【窗格】选项卡中的【插入窗格】按钮,插入第一个窗格,在【自动调整大小】项选择“1-sbrSpring”。单击“索引”项的右箭头,插入第二个窗格,进入窗格2的设置页面,【样式】项选择“6-sbrDate”, 【自动调整大小】项选择“2-sbrContents”。 单击“索引”项的右箭头,插入第三个窗格,进入窗格3的设置页面,【样式】项选择“5-sbrTime”。
二、设计状态栏
案例实施:
第二步:设置【StatusBar】控件【窗格】选项卡
3. 在【StatusBar】控件的【属性页】对话框,选择【字体】选项卡,设置状态栏字体为“宋体”、字号为“14.25”,选择黑体、倾斜。单 击“确定”按钮,完成对状态栏的设置。
4. 设置状态栏代码——实现在加载对话框时在第一个窗格内显示指定文字。
Private Sub Form_Load()
StatusBar1.Panels(1).Text = "欢迎进入我的旅游网首页——快来和小伙伴们分享你的游记吧!" ‘指定状态栏的窗格1中显示的文本
End Sub
二、设计状态栏
内容讲解:
StatusBar控件的属性页由通用、窗格、字体、图片四个选项卡组成。状态栏的属性主要集中在【窗格】选项卡(Panel)中,StatusBar控件第i个窗格属性可用Panels (i)表示。现将【窗格】属性表中的各项做以介绍。
索引(Index):该属性用于表示窗格的惟一序号,其值是用户新建窗格时由系统自动设置的。用户可通过索引右边的【】、【】按钮选择不同索引对应的窗格。
文本(Text):用于设置窗格要显示的内容。
二、设计状态栏
内容讲解:
工具提示文本:用于设置状态栏窗格的飞行提示内容。当通用选项卡中的“显示提示”复选框有效时,将鼠标移到状态栏窗格上会显示飞行提示内容。
关键字(Key):用于在程序中惟一标识窗格。
最小宽度(MinWidth):是指当前窗格的最小宽度,用户可根据实际情况设置最小宽度值,调整各窗格的宽度。
对齐(Alignment):参数0-sbrLeft表示窗格中的文本左对齐、1-sbrCenter表示窗格中的文本居中对齐、2-sbrRight表示窗格中的文本右对齐。
二、设计状态栏
内容讲解:
样式(Style):属性值决定了状态栏窗格的显示方式,共有7种显示方式。可显示相关按键的状态、系统日期与系统时间,也可显示用户自定义信息。
斜面(Bevel):参数0-sbrNoBevel表示窗格无凹凸、1-sbrInset表示窗格凹下、2-sbrRaised表示窗格凸起。
自动调整大小(AutoSize):0-sbrNoAutoSize表示不会自动改变大小,该窗格的宽度始终由Width属性指定。1-SbrSpring表示当父窗体的大小发生改变,产生了多余的空间时,所有具有该设置的窗格将均分空间,并相应的变大;而且这些窗格的宽度不会小于由MinWidth属性指定的宽度。2-SbrContens表示窗格的宽度与其内容匹配。
二、设计状态栏
实训 设计简易文本记事本
实训要求:制作一个简易文本记事本,为文本记事本设计相应的下拉式菜单栏、弹出式菜单、工具栏和状态栏,并实现所有菜单命令和工具栏按钮的功能。运行界面如下图所示。
50
敬请指正
$$