第10章 菜单、工具栏和状态栏

上传人:无*** 文档编号:252613195 上传时间:2024-11-18 格式:PPT 页数:26 大小:621.50KB
返回 下载 相关 举报
第10章 菜单、工具栏和状态栏_第1页
第1页 / 共26页
第10章 菜单、工具栏和状态栏_第2页
第2页 / 共26页
第10章 菜单、工具栏和状态栏_第3页
第3页 / 共26页
点击查看更多>>
资源描述
Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,10.1,菜单,的应用,第,10,章 菜单、工具栏和状态栏,退出,10.2,工具栏和状态栏,10.1,菜单的应用,在窗口环境下,绝大多数应用程序使用菜单界面进行各种操作。菜单提供了人机对话界面,方便使用者选择应用系统的各种功能。另外,通过菜单可以管理应用系统,控制应用程序各种功能模块的运行。,菜单可分为下拉式菜单和弹出式菜单两种基本类型。,在,VB,中,菜单控件也是一个对象,具有定义它的外观与行为的属性。菜单控件只包含一个事件,即单击事件。,图,10-1,下拉式菜单的组成,10.1.1,下拉式菜单,图,10-2,菜单编辑器,从菜单编器器窗口可知,菜单编器器窗口分为三个部分,即属性区、编辑区和列表框。,1.,属性区,属性区为窗口标题栏下面的,5,行,用来输入或修改菜单项,设置属性。其中的主要项目的作用见表,10-1,。,表,10-1,菜单控件的主要性,属性,说,明,标题,相当于控件的说明属性,这些名字出现在菜单条或菜单之中。分隔符条的标题为一个连字符,(-),。,名称,为菜单项的标识符,相当于控件的名字属性,仅用于访问代码中的菜单项,不会出现在菜单中,索引,设置菜单控件数组的下标。相当于控件数组的索引属性,快捷键,允许为每个命令选定快捷键,即通过键盘来选择某个菜单项,复选,当,复选,属性设置为,True,时,在相应的菜单项旁加上,以表明该菜单项处于活动状态,有效,用来设置菜单项的操作状态,当该属性设置为,False,时,相应的菜单项呈灰色,表明不会相应用户事件,可见,设置该菜单项是否可见。不可见的菜单项时不能被执行的,协调位置,NegotiatePosition,属性决定是否及如何在容器窗体中显示菜单,“,显示窗口列表,”,在,MDI,应用程序中,确定菜单控件是否包含一个打开的,MDI,子窗体列表,编辑区由,7,个按钮组成,单击右箭头将把选定的菜单向右移一个等级。单击左箭头将把选定的菜单向上移一个等级。单击上箭头将把选定的菜单项在同级菜单内向上移动一个位置。单击下箭头把选定的菜单项在同级菜单内向下移动一个位置。单击“下一个”按钮将开始一个新的菜单项。单击“插入”按钮将在某个菜单项前插入一个新的同级空白菜单项。单击“删除”按钮将删除选定的菜单项。,2.,编辑区,3.,列表框,菜单项列表框为菜单编辑器最下面的列表框,该列表框显示菜单项的分级列表。将子菜单项缩进以指出它们的分级位置或等级。参见图,10-3,。,图,10-3,菜单编辑器,在使用,Word,应用程序时经常会发现,某些菜单项会呈灰色显示,此时单击该次菜单项没有任何反映,有时菜单项的标题会发生改变。这些都可以通过在菜单设计和程序代码中加以控制。,(,1,)有效性控制,一个菜单项是否正常显示,即该菜单项是否“有效”,是由该菜单项的“有效”属性来控制的。只有该属性设置为,True,时,单击该菜单项才会执行相应的操作。可以在设计时设置该属性值(选中图,10-3,中的“有效”复选框),也可以在运行时通过执行代码加以改变。,(,2,)可见性控制,只有将菜单项的,Visible,属性设置为,True,,,该菜单项才显示。可以在设计时设置该属性值(选中图,10-3,中的“可见”复选框),也可以在运行时通过执行代码加以改变。,(,3,)菜单项标记,菜单项标记就是在菜单项左边加上标记,表明该菜单项处于选择状态。设计时该属性可以由菜单编辑器中的“复选”(,Checked,),属性设置,也可以在属性窗口的“,Checked”,栏内设置。通常情况下,该属性时在程序运行时动态地进行设置的。,4.,快捷键和访问键,访问键是标题中带下划线的字符,如在标题中输入“文件,(&F)”,,则在程序运行时,F,便是带下划线的字符,按,Alt+F,组合键便可以打开“文件”菜单。需要指出的是,菜单中不能使用重复的访问键。如果多个菜单项使用同一个访问键,那么该键将不起作用。,创建快捷键的方法是先选取要定义快捷键的菜单项,然后从“快捷键”组合框中选取一个组合键。如果要删除菜单项的快捷键,则从“快捷键”组合框中选取顶部的“,(none)”,项,如图,10.4,所示。,图,10.4,添加快捷键和访问键的过程,任何复杂的菜单程序都遵循相同的设计方法,下面通过一个实例来说明编写菜单程序的过程。,例,10-1,:某电脑销售公司销售系统界面见图,10-4,,部分菜单的内容见表,10-1,。试按表,10-2,设计菜单。,1,)用菜单编辑器建立菜单的实例,图,10-4,应用程序界面,表,10-2,菜单结构,标题,名称,上级菜单标题,热键,快捷键,有无对话框,用户,MUser,无,F,无,新建,MNew,用户,N,Ctrl+N,有,打开,MOpen,用户,O,Ctrl+O,有,-,MSeg1,用户,无,无,无,保存,MSave,用户,S,Ctrl+S,无,另存为,MSaveother,用户,A,有,-,MSeg2,用户,无,无,无,配置预览,MPreview,用户,R,无,有,打印,MPrint,用户,P,有,-,MSeg3,用户,无,无,无,退出,MExit,用户,E,无,编辑,MEdit,无,E,无,部件,MPart,无,P,无,工具,MTool,无,T,无,无,帮助,MHelp,无,H,无,1.,菜单结构设计步骤,(,1,)打开需要设计菜单的窗,(,2,)打开菜单编辑器对话框口。,(,3,)在图,10-3,所示的菜单编辑器对话框的“标题”栏输入“用户,&F”,(,&F,表示热键为,F,),此时在菜单项显示区出现键入的内容,在“名称”栏内输入“,MUser,”,,在“快捷键”下拉框内选择“,None”,。,(,4,)单击“下一个”按钮,菜单项显示区的条形光标下移,同时,菜单编辑器数据区清空。在“标题”栏输入“新建,&N”,,此时在菜单项显示区出现键入的内容,在“名称”栏内输入“,MNew,”,,在“快捷键”下拉框内选择“,Ctrl+N,”,。,(,5,)单击编辑区的右箭头在菜单项显示区的“新建,&N”,左边出现符号“,.”,,表明“新建”是“用户”的下一级子菜单。,(,6,)仿照上面的步骤,建立所有菜单项,注意各菜单之间的关系用右箭头和左箭头按钮进行调整。,,,2.,编写程序代码,设计好菜单后,需要编写菜单项的,Click,事件过程。,Private Sub,dakai_Click(Index,As Integer),Dim,sFile,As String,Label1.Visible=False ,隐藏,Label1,控件(即显示“欢迎,”,字样的的控件),On Error,GoTo,nofile,设置错误陷阱,With CommonDialog1 CommonDialog1,为添加的通用对话框控件,.,DialogTitle,= ,打开,.,CancelError,= False,.,InitDir,= d:,.Filter = ,文本文件,|*.Txt,.,ShowOpen,显示“打开”对话框,If,Len(.FileName,) = 0 Then,Exit Sub,End If,sFile,= .,FileName,End With,nofile,: ,错误处理,If Err.Number = 32755 Then,Exit Sub,End If,添加处理打开的文件的代码,End Sub,2,)菜单项的增减,1.,增加菜单项,菜单项的增减是通过菜单控件数组实现的。菜单控件数组和普通数组一样,是通过下标来访问数组中的元素(这里为菜单项)的。菜单控件数组可以设计时建立,也可以在运行时建立。,例,10-3,:在例,10-2,中,要求在程序运行时,在“文件”菜单的“退出”菜单项之上保留最近打开的文件清单。增加一个“清除”菜单项,当单击该菜单项时,将清除所有文件清单。,(,1,)打开如图,10-8,所示的菜单编辑器,单击菜单列表区中的“退出”项。,(,2,)单击“插入”按钮,清除数据区的内容。,(,3,)在“标题”栏输入“文件清单”,在“名称”栏内输入“,MdocuName,”,(,菜单名称),输入“索引”值,0,以使“,MdocuName,”,菜单项成为菜单控件数组,设置“可见”属性为,False,。,(,4,),在“退出”菜单项前新增一个分隔符号,设置“可见”属性为,False,。,(,5,),在“退出”菜单项前新增一个标题为“清除”、名称为,Clear,的菜单项,设置“有效”属性为,False,。,(,6,),在窗体层定义变量,menucounter,控制菜单控件数组的下标。,Dim,menucounter,As Integer,(,7,)在“新建”和“打开”菜单项的,Click,事件过程中加上如下代码:,menucounter,=,menucounter,+ 1,If,menucounter, 0 Then ,当“,MdocuName,”,菜单项不为空时,“清除”菜单项有效,Clear.Enabled = True,Else,Clear.Enabled = False,End If,图,10-5,初始菜单,图,10-6,打开文件后的菜单,图,10-5,为“,MdocuName,”,菜单项为空的情况(即没有一个文件打开),图,10-6,为打开了四个文件后的情况。,2.,删除菜单项,在运行时用,load,语句增加的菜单项可以使用,Unload,语句删除,但不能删除设计时建立的菜单项。如单击“用户,|,清除”菜单项时,删除所有打开的文件清单,可以编写如下代码:,Private Sub Clear_Click(),For i = 0 To,menucounter,- 1,Unload,Mdocumenu(menucounter,- i),Next,MSeg14.Visible = False ,删除不必要的分隔线,End Sub,10.1.2,弹出菜单,弹出菜单是独立于菜单栏的浮动菜单,其在窗体上的显示位置由单击鼠标时指针的位置决定。,在,VB,中,使用,PopupMenu,方法来显示弹出菜单。,PopupMenu,方法的语法为:,对象,.,PopupMenu,菜单名,标志,,x,,,y,表,10-3,用于“标志,”,的设置值,常数位置,值,描述,vbPopupMenuLeftAlign,0,缺省值。弹出式菜单的左边定位于,x,。,vbPopupMenuCenterAlign,4,弹出式菜单以,x,为居中心。,vbPopupMenuRightAlign,8,弹出式菜单的右边定位于,x,。,常数行为,值,描述,vbPopupMenuLeftButton,0,缺省值。,仅当使用鼠标左按钮时,,弹出式菜单中的项目才响应鼠标单击。,vbPopupMenuRightButton,2,不论使用鼠标右按钮还是左按钮,,弹出式菜单中的项目都响应鼠标单击。,在例,10-1,中,当在,Form1,窗体上单击鼠标右键时,要求在光标处弹出“用户”菜单,需要添加的代码为:,Private Sub,Form_MouseDown(Button,As Integer, Shift As Integer, X As Single, Y As Single),If Button = 2 Then,PopupMenu,MUser,vbPopupMenuCenterAlign,End Sub,PopupMenu,可以适用于所有的菜单项,如有下列事件代码:,Private Sub,ListCPU_MouseDown(Button,As Integer, Shift As Integer, X As Single, Y As Single),If Button = 2 Then,PopupMenu,MParta,vbPopupMenuCenterAlign,End Sub,当鼠标右键单击,ListCPU,控件(为一个列表框控件,用于选择,CPU,配件)时,弹出“主要部件”子菜单,以便选择其他主要部件(打开其他配件的列表框)。,MParta,为主要部件子菜单的名称。,10.2,工具栏和状态栏,在,Visual Basic,环境中,提供两个,ActiveX,控件,Toolbar(,工具栏控件,),和,StatusBar,(,状态栏控件,),,利用这两个控件便能够方便快捷地制作出工具栏和状态栏。,由于,ActiveX,控件通常不包含在标准控件中,所以使用前应首先将其添加进标准控件工具箱。在“工程”菜单中执行“部件”命令后弹出“部件”对话框。选择其中的,Microsoft Windows Common Controls 6.0,后单击“确定”按钮。此时将在标准控件工具箱中添加,9,个控件,其中就包含工具栏控件和状态栏控件,如图,10.7,所示。,图,10.7(a),工具栏控件,图,10.7(b),状态栏控件,10.2.1,工具栏,在窗体中加人工具栏控件的方法同其他控件一样,只是当它被加入时默认地出现在窗体的顶端。可以在属性窗口中通过修改工具栏控件的,A1ign,属性来设置它在窗体中的位置,如表,10.4,所示。,表,10.4,工具栏的,Align,属性,设置值,常数,说明,0,vbAlignNone,可以在设计时或编制程序中确定大小和位置。如果对象在,MDI,窗体上,该值被忽略,1,vbAlignTop,对象显示在窗体的顶部,2,vbAlignBotton,对象显示在窗体的底部,3,vbAlignLeft,对象显示在窗体的左边,4,vbAlignRight,对象显示在窗体的右边,例,10.2,程序添加一个工具栏,工具栏中有,3,个按钮,可以改变文本框中的字体是否为“粗体”、“斜体”、“下划线”。如图,10.8,所示。,图,10.8,工具栏的运行过程,10.2.2,状态栏,使用状态栏控件和使用工具栏控件一样,首先需要在工具箱中添加,ActiveX,控,Microsoft Windows Common Controls 6.0,。在窗体中添加状态栏控件,状态栏控件一般位于窗体的下方,如图,10. 9,所示。,图,10.9,在窗体中添加状态栏,表,10.5,状态栏的,Style,属性,Style,值,说明,SbrText-0,显示文本和位图,SbrCaps-1,显示大小写控件键的状态,SbrNum-2,显示数字控制键的状态,Sbrlns-3,显示插入键的状态,SbrDate-4,显示当前日期,SbrTime-5,显示当前时间,例,10.3,为程序添加一个状态栏,显示当前文本的字体大小和字体颜色,如图,10.10,所示,图,10.10,状态栏的运行过程,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!