《visualbasic程序设计.ppt》由会员分享,可在线阅读,更多相关《visualbasic程序设计.ppt(41页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第七章 设计菜单 学习目标学习目标 掌握:菜单、工具栏的设计方法理解:菜单的各项属性、菜单项的增减了解:弹出式菜单 学习要点学习要点 菜单、菜单编辑器、菜单的高级应用、弹出式菜单的设计;工具栏的设计7.1 设计下拉式菜单 学习目标学习目标 1.了解菜单的功能和基本结构;2.掌握用菜单编辑器设计下拉式菜单系统外观的方法;3.理解并掌握编写菜单事件过程的方法。学习重点学习重点 1.下拉式菜单系统外观的设计方法;2.编写菜单事件过程的方法。学习难点学习难点 1.编写菜单事件过程的方法;2.剪贴板对象的应用。菜单在windows应用程序中有广泛的应用,是应用程序图形化界面中一个必不可少的组成元素,通过
2、菜单对各种命令按功能进行分组,能使用户更加方便、直观地访问这些命令。7.1 设计下拉式菜单一、菜单系统的功能1将应用程序的所有功能分类显示于菜单的选项中,以便用户选择。2管理应用系统,控制各种功能模块的运行。7.1 设计下拉式菜单二、菜单系统的种类和结构1、弹出式菜单2、下拉式菜单 菜单栏(主菜单)主菜单项 子菜单菜单项 有效和无效的菜单项和子菜单项 带复选框的菜单项和子菜单项 级联菜单(最多可达6层)。启动对话框 分隔线 7.1 设计下拉式菜单弹出式菜单弹出菜单项目弹出菜单7.1 设计下拉式菜单主菜单项快捷键热键级联菜单标记菜单栏分隔线菜单项子菜单名下拉式菜单7.1 设计下拉式菜单三、VB中
3、设计菜单的工具菜单编辑器1菜单编辑器(1)打开方法 “工具”主菜单项/菜单编辑器 工具栏菜单编辑器 窗体上弹出式菜单菜单编辑器(2)作用 在菜单编辑器对话框中可以完成创建、编辑、修改菜单等工作,如添加/删除菜单项、调整菜单项的位置、定义菜单中的快捷键和访问键。7.1 设计下拉式菜单(3)结构7.1 设计下拉式菜单菜单控件属性区菜单项显示区(菜单控件列表框)编辑区2菜单控件 菜单系统是一个整体,但每一个菜单项分别是一个控件。因此,设计菜单同设计其他控件相似,要设置其属性和编写事件过程。在设计阶段设置属性时用菜单编辑器在菜单控件属性区中设置。在程序运行时则是通过代码实现的。7.1 设计下拉式菜单(
4、1)菜单控件的主要属性 标题Caption:设置程序运行时显示在菜单上的文字。名称Name:设置菜单项的控件名称,用来在代码中识别菜单控件。注意:Visual Basic禁止在菜单控件未命名之 前退出菜单编辑。复选Checked:设置菜单项是否被选中。有效Enabled:设置菜单项是否对事件作出响应。(正常显示或灰色)可见Visible:设置菜单项是否可见。7.1 设计下拉式菜单(2)菜单控件的事件 菜单控件只有一个Click事件。(3)菜单的特点:菜单也是一个控件。不象命令按纽、列表框等其他的控件,菜单没有标准的外观。菜单项随着应用程序的不同而不同。就下拉式菜单来说,唯一不变的就是菜单栏。7
5、.1 设计下拉式菜单四、下拉式菜单的设计 设计一个类似Word的带下拉式菜单的简易文本编辑器1下拉式菜单的设计步骤(1)建立窗体,添加控件;(2)打开菜单编辑器,进入菜单设计窗口;(3)设置各菜单项的属性;(4)为菜单项编写相应的事件过程。7.1 设计下拉式菜单2菜单系统的外观设计(1)基本操作1.“”按钮:下一级菜单项;2.“”按钮:上一级菜单项。3.和按钮:改变菜单项位置。4.下一个(Next):设置下一个菜单项。5.插入(Insert)按钮:插入菜单项6.删除(Delete)按钮:删除菜单项7.1 设计下拉式菜单(2)修饰菜单 设置菜单分隔线(-):分界符也应有名称。访问键(热键):(&
6、F)ShortCut(快捷键):当快捷键按下时菜单项被执行。经常用到的菜单项目要设置一个快捷键以支持键盘访问。7.1 设计下拉式菜单3编写菜单事件过程 完成菜单系统外观设计后,还必须为各个菜单项进行编码,才能真正做到通过选择菜单项来实现某项功能。(1)最简单的情形编写“文件”主菜单中的“关闭”菜单项的事件过程只需用End方法即可。编写“隶书”、“宋体”级联菜单项代码,只要在其事件过程中令Text1.FontName=“隶书”和Text1.FontName=“宋体”即可。7.1 设计下拉式菜单例题代码Private Sub mnuFileClose_Click()EndEnd SubPrivat
7、e Sub mnuFormatFontlishu_Click()Text1.FontName=隶书End SubPrivate Sub mnuFormatFontsongti_Click()Text1.FontName=宋体End Sub7.1 设计下拉式菜单(2)菜单的控制菜单项的状态 有效性控制Enabled 使菜单项失效或生效。菜单项的复选标志Checked 在菜单项上添加或去除选中符号。有些对应的命令表示的是一种开关状态,只有两种可能的状态,因此,首先要判定它的属性值。Visible 只有将菜单项的Visible属性设置为True,该菜单项才显示。可以在设计时设置该属性值,也可以在运行
8、时通过执行代码加以改变7.1 设计下拉式菜单例题代码Private Sub Form_Load()Clipboard.Clear mnuEditCut.Enabled=False mnuEditCopy.Enabled=False mnuEditPaste.Enabled=FalseEnd Sub7.1 设计下拉式菜单 点击“编辑”主菜单项后,应先判断文本框中是否有文本被选中Private Sub mnuEdit_Click()If Text1.SelLength 0 Then mnuEditCut.Enabled=True mnuEditCopy.Enabled=True Else mnuE
9、ditCut.Enabled=False mnuEditCopy.Enabled=False End IfEnd Sub7.1 设计下拉式菜单(3)剪贴板对象Clipboard 剪贴板是内存的一部分区域,所有应用程序都能使用剪贴板中的信息。在VB中,所有与剪贴板有关的操作是通过剪贴板对象实现的。剪贴板对象是用于暂时保存图形和文本的一种特殊的控件,它是VB中预先定义好的控件组。剪贴板对象没有任何属性和事件,但通过它的一些方法可以提供对系统剪贴板的访问(即发送和接收数据)。7.1 设计下拉式菜单 剪贴板对象的方法Clipboard.Clear 将剪贴板清空Clipboard.SetText Tex
10、t1.SelText 将选中的字符串复制到剪贴板Clipboard.SetData Data,Format 将非文本数据复制到剪贴板上Clipboard.GetText 将剪贴板上的字符串发送到光标所在位置Clipboard.GetData 将剪贴板上的非文本数据发送到光标所在位置7.1 设计下拉式菜单例题代码(剪切)Private Sub mnuEditCut_Click()If Text1.SelLength 0 Then Clipboard.SetText Text1.SelText Text1.SelText=同时要让粘贴菜单项有效 mnuEditPaste.Enabled=True
11、End IfEnd Sub Text1.SelText表示文本框中选定的文本 Text1.SelLength表示文本框中选定文本的长度7.1 设计下拉式菜单复制Private Sub mnuEditCopy_Click()If Text1.SelLength 0 Then Clipboard.SetText Text1.SelText mnuEditPaste.Enabled=True End IfEnd Sub 复制与剪切的区别是Text1.SelText=同时要让粘贴菜单项有效7.1 设计下拉式菜单粘贴Private Sub mnuEditPaste_Click()If Len(Clipb
12、oard.GetText)0 Then Text1.SelText=Clipboard.GetText End IfEnd Sub注意:Text1.SelText=Clipboard.GetText 和 Text1.Text=Clipboard.GetText的区别 (在光标所在位置处插入剪贴板上的数据)7.1 设计下拉式菜单全选Private Sub mnuEditSel_Click()If mnuEditSel.Checked=False Then mnuEditSel.Checked=True Text1.SelStart=0 Text1.SelStart表示文本框中选定文本的开始位置
13、Text1.SelLength=Len(Text1.Text)Else mnuEditSel.Checked=False Text1.SelLength=0 End IfEnd Sub7.1 设计下拉式菜单Text1.Text:表示文本框中的文本Text1.SelText:表示文本框中选定的文本Text1.SelLength:表示文本框中选定文本的长度Text1.SelStart:表示文本框中选定文本的开始位置7.1 设计下拉式菜单 7.2 弹出式菜单 弹出菜单是独立于菜单栏的浮动菜单,其在窗体上的显示位置由单击鼠标时指针的位置决定。弹出式菜单也是通过“菜单编辑器”来设计的。设计方法与下拉式菜
14、单相似,仅该菜单名不可显示,主菜单的“可见”Visible属性为False。7.2 弹出式菜单 在VB中,使用PopupMenu方法来显示弹出菜单。PopupMenu方法的语法为:对象.PopupMenu 菜单名,标志,x,y 其中,标志表示弹出的位置和触发的键,位置与性能是加的关系。7.3 设计工具栏 工具栏是大多数应用程序不可缺少的一个部分,它将应用程序常用的菜单命令以按钮的方式呈现,使用户可以快速选择按钮,以执行相应的功能。7.3.1 设计工具栏 VB提供了Toolbar控件,可以快速的设计工具栏。Toolbar控件不是标准控件,须将Toolbar控件调入工具箱。方法如下:通过“工程”“
15、部件”“控件”,再选中“Microsoft Windows Common Control6.0”选项,如图所示。7.3 设计工具栏7.3 设计工具栏 Toolbar控件会自动出现在窗体的上部,若窗体上已有菜单栏,则在会固定在其下方。我们就可以利用Toolbar控件添加不同类型的按钮,一般可分为文字按钮和图形按钮。7.3 设计工具栏一、设计文字按钮制作文字按钮的步骤:(1)在窗体上添加了Toolbar控件后,移动鼠标在Toolbar1上单击鼠标右键,调出快捷菜单,选择“属性”。(2)选择“按钮”标签,然后选择“插入按钮”。(3)在Caption标题栏输入想要显示的文字标题,然后在Key栏输入关键
16、字,接着可在ToolTipText工具栏输入提示文字,最后在Style栏选择合适的按钮样式。7.3 设计工具栏7.3 设计工具栏 (4)重复步骤(3),建立“粗体”Check样式的工具按钮。(5)重复步骤(3),建立“颜色”Dropdown样式的工具按钮。然后在“ButtonMenus”按钮菜单区选择“插入按钮菜单项”钮,建立颜色按钮的下拉式选项。7.3 设计工具栏二、设计图形按钮 想要制作图形按钮,须事先准备好图片,然后利用ImageList控件将按钮图片加入,再将Toolbar控件的“ImageList”项指定为ImageList控件,这样就可以为为每一个按钮设计一个图片了。7.3 设计工
17、具栏 我们将上图中的“打开”和“粗体”按钮加上图片,具体步骤如下所示:(1)ImageList控件也是属于Microsoft Windows Common Control6.0中的控件,所以可以在调入Toolbar控件后,直接从工具箱调入至窗体。(2)在ImageList控件上单击鼠标右键,调出快捷菜单,选择“属性”,然后选择属性页的“Image”标签,再选择按钮。调出“选择图片”的对话框,从中将所有合适的图片文件选中,选择“打开”,就可以将图片调入ImageList控件的Images栏中。7.3 设计工具栏 (3)在已做好Toolbar控件上单击鼠标右键,调出快捷菜单,选择“属性”,然后选择
18、属性页的“General”标签,在ImageList栏选中ImageList1控件。7.3 设计工具栏 (4)选择Toolbar控件属性页上的“Buttons”标签,在Image栏选择ImageList控件上图片作为按钮上的图片。(5)最后选择“确定”按钮,运行后的界面如下所示。7.3 设计工具栏三、编写工具按钮的事件过程 一般编写工具按钮的事件过程是在Toolbar控件的ButtonClick事件中,代码通常利用Case语句及Button.Key来判定用户按下哪一个按钮,以便能执行相应的程序代码。如该工具按钮为带下拉式菜单的按钮,则在ButtonMenuClick事件中编写代码,利用ButtonMenu.Key来判定用户使用的是哪一个菜单项,其判断值为Key栏的设置值。7.3 设计工具栏