第七章 设计菜单
一、教学内容
设计下拉式菜单,弹出式菜单和工具栏的设计。
二、目的要求
1.掌握菜单、工具栏的设计方法
2.理解菜单的各项属性、菜单项的增减
3.了解弹出式菜单
三、教学重点与难点
教学重点:菜单、菜单编辑器、菜单的高级应用、弹出菜单设计;
工具栏的设计
教学难点:菜单、工具栏的编程
四、教学方法
多媒体教学为主。适当提问,加深学生对概念的理解。
第一讲 (2学时)
一、教学内容
7.1菜单的设计
二、目的要求
1.了解菜单的功能和基本结构;
2.掌握用菜单编辑器设计下拉式菜单系统外观的基本方法;
3.理解并掌握编写菜单事件过程的方法。
三、教学重点与难点
教学重点:
1、下拉式菜单系统外观的设计方法;
2、编写菜单事件过程的方法。
教学难点:
1、编写菜单事件过程的方法;
2、剪贴板对象的应用。
四、教学方法
多媒体教学。
五、教学过程
(一)引入
菜单在windows应用程序中有广泛的应用,是应用程序界面中十分关键的要素之一,它以分组的形式组织多个命令和操作,为用户灵活操作应用程序提供了便捷的手段。
以学生所熟悉的Word2002的菜单系统为例讲解菜单的功能、结构,并对在后面要设计的内容进行演示和强调。
(二)菜单系统的功能
1.将应用程序的所有功能分类显示于菜单的选项中,以便用户选择。
2.管理应用系统,控制各种功能模块的运行。
(三)菜单系统的种类和结构
弹出式菜单
下拉式菜单:菜单栏(主菜单)
子菜单(菜单项)
> ——级联菜单(最多可达6层,含菜单栏)
。。。——启动对话框
分隔线——
带复选框的菜单项和子菜单项
有效和无效的菜单项和子菜单项
(四)VB中设计菜单的工具——菜单编辑器
1.菜单编辑器
(1)打开方法
工具——菜单编辑器
窗体上快显菜单/菜单编辑器
(2)作用
在菜单编辑器对话框中完成创建、编辑、修改菜单(添加/删除菜单项、调整菜单项的位置、定义菜单中的快捷键和访问键等工作)。
(3)结构(可借例题进行说明)
菜单控件属性区
编辑区
菜单项显示区
2.菜单控件
菜单系统是一个整体,但每一个菜单项分别是一个控件。因此,设计菜单同以往设计控件相似,要设置其属性和编写事件过程。
在设计阶段设置属性时就是用菜单编辑器;在程序运行时就通过代码实现。
菜单控件的主要属性 (可结合介绍菜单控件属性区)
Caption(标题):程序运行时显示在菜单上的文字。
Name(名称):菜单项的控件名称,用来在代码中识别菜单控件。
通常菜单名称以mnu开头,它可以是简单控件的名称,也可以是控件数组的名称,若是后者,则还要指定索引值。
Visual Basic禁止在菜单控件未命名之前退出菜单编辑。
Checked(复选):设置是否选中标志。
Enabled(有效):决定菜单项是否对事件作出响应。(正常显示或灰色)
Visible(可见):决定菜单项是否可见。
(2)菜单控件的事件
菜单控件只有一个click事件。
(五)下拉式菜单的设计(以简易文本编辑器的设计为例进行说明)
1.下拉式菜单的设计步骤
(1)建立窗体,添加控件;
(2)打开菜单编辑器,进入菜单设计窗口;
(3)设置各菜单项的属性;
(4)为菜单项编写相应的事件过程。
2.菜单系统的外观设计
老师先示范设计文件主菜单,剩下的由学生上讲台完成。
(1)基本操作
“->”: 添4个点,表示等级降一级。主菜单 /子菜单/ 级联菜单
菜单项上移
“插入”:光标所在位置的上方插入。
(2)美化菜单
设置菜单分隔线(-):将菜单项分类,以便用户迅速找到所需的菜单项。
分隔线本身不是菜单项,因此不能带子菜单,不能设置除名称外的属性。
访问键(热键)&:定义菜单项的访问键。如文件为Alt+F。
ShortCut(快捷键):定义菜单项的快捷键,提高选取命令的速度。
快捷键下拉列表。
应尽可能地按Windows的习惯设置,如粘贴为Ctrl+V。
Checked:在菜单项上添加或去除选中符号。如Word中的工具栏。
既可以通过属性窗口设置,也可以通过代码设置。
Enabled:使菜单项失效或生效。如Word中未选中文本,则“复制”菜单项应无效。
Visible:隐藏和显示菜单。
3.编写菜单事件过程
完成菜单系统外观设计后,还必须为各个菜单项进行编码,才能真正做到通过选择菜单项来实现某项功能。
(1)最简单的情形
介绍实现关闭文件、设置文本字体和颜色等较为简单的功能的方法。
(2)菜单的控制——菜单项的状态
①有效性控制Enabled
如Word中未选中文本,则“复制”菜单项应无效。
②菜单项的复选标志Checked
有些对应的命令表示的是一种开关状态,只有两种可能的状态,因此,首先要判定它的属性值。
(3)剪贴板对象Clipboard
①剪贴板是内存的一部分区域,所有应用程序都能使用剪贴板中的信息。在VB中,所有与与剪贴板有关的操作是通过剪贴板对象实现的。
剪贴板对象是用于暂时保存图形和文本的一种特殊的控件,它是VB中预先定义好的控件组。
②剪贴板对象没有任何属性和事件,但通过它的一些方法可以提供对系统剪贴板的访问(即发送和接收数据)。
③方法:
Clipboard.Clear 将剪贴板清空
Clipboard.SetText 将选中的字符串复制到剪贴板上
Clipboard.SetData 将选中的非文本数据复制到剪贴板上
Clipboard.GetText 将剪贴板上的字符串发送到光标所在位置
Clipboard.GetData 将剪贴板上的非文本数据发送到光标所在位置
④应用时要注意的问题
。Text1.SelLength>0
。Text1 SelText 与Text1.Text的区别
。Len(Clipboard.GetText)>0
。Text1.SelText=Clipboard.GetText 和Text1.Text=Clipboard.GetText的区别
六、小结
在这一讲里我们要了解菜单的功能和基本结构,掌握用菜单编辑器设计下拉式菜单系统外观的基本方法, 理解并掌握编写菜单事件过程的方法。
七、作业
习题7.1,7.4
第二讲 (2学时)
一、教学内容
设计工具栏。
二、目的要求
1.掌握工具栏使用。
三、教学重点与难点
教学重点:文本工具栏、图形工具栏。
教学难点:工具栏有关部分程序的编写
四、教学方法
多媒体教学。
五、教学过程
7.3.1 设计工具栏
VB提供了Toolbar控件,可以快速的设计工具栏。 Toolbar控件不是标准控件,须将Toolbar控件调入工具箱。方法如下:
通过“工程”→“部件”→“控件”,再选中“Microsoft WindowCommomControl6.0”选项
1.设计文字按钮
制作文字按钮的步骤:
(1)在窗体上添加了Toolbar控件后,移动鼠标在Toolbar1上单击鼠标右键,调出快捷菜单,选择“属性”。
(2)选择“按钮”标签,然后选择“插入按钮” 。
(3)在Caption标题栏输入想要显示的文字标题,然后在Key栏输入关键字,接着可在ToolTipText工具栏输入提示文字,最后在Style栏选择合适的按钮样式。
(4)重复步骤(3),建立“粗体” Check样式的工具按钮。
(5)重复步骤(3),建立“颜色” Dropdown样式的工具按钮。然后在“ButtonMenus”按钮菜单区选择“插入按钮菜单项”钮,建立颜色按钮的下拉式选项。
2.设计图形按钮
想要制作图形按钮,须事先准备好图片,然后利用ImageList控件将按钮图片加入,再将Toolbar控件的“ImageList”项指定为ImageList控件,这样就可以为为每一个按钮设计一个图片了
我们将上图中的“打开”和“粗体”按钮加上图片,具体步骤如下所示:
(1)ImageList控件也是属于Microsoft Windows Common Control6.0中的控件,所以可以在调入Toolbar控件后,直接从工具箱调入至窗体。
(2)在ImageList控件上单击鼠标右键,调出快捷菜单,选择“属性”,然后选择属性页的“Image”标签,再选择按钮。调出“选择图片”的对话框,从中将所有合适的图片文件选中,选择“打开”,就可以将图片调入ImageList控件的Images栏中。
(3)在已做好Toolbar控件上单击鼠标右键,调出快捷菜单,选择“属性”,然后选择属性页的“General”标签,在ImageList栏选中ImageList1控件。
(4)选择Toolbar控件属性页上的“Buttons”标签,在Image栏选择ImageList控件上图片作为按钮上的图片。
(5)最后选择“确定”按钮,运行后的界面如下所示。
3.编写工具按钮的事件过程
一般编写工具按钮的事件过程是在Toolbar控件的ButtonClick事件中,代码通常利用Case语句及Button.Key来判定用户按下哪一个按钮,以便能执行相应的程序代码。如该工具按钮为带下拉式菜单的按钮,则在ButtonMenuClick事件中编写代码,利用ButtonMenu.Key来判定用户使用的是哪一个菜单项,其判断值为Key栏的设置值。
六、小结
工具栏是大多数应用程序不可缺少的一个部分,它将应用程序常用的菜单命令以按钮的方式呈现,使用户可以快速选择按钮,以执行相应的功能
七、作业
习题7.2,7.3