vb菜单与工具栏设计.ppt
《vb菜单与工具栏设计.ppt》由会员分享,可在线阅读,更多相关《vb菜单与工具栏设计.ppt(79页珍藏版)》请在三一办公上搜索。
1、第4章 菜单与工具栏设计,主要内容:,1.菜单设计,2.弹出式菜单设计,3.工具栏设计,4.状态栏设计,4.1 菜 单 设 计,在Windows中,菜单可以分为两种基本类型:下拉式菜单和弹出式菜单。下拉式菜单一般通过单击菜单栏中菜单名称的方式打开,而弹出式菜单一般通过在某一区域右击的方式打开。如图4-1所示,分别是VB“工程”菜单的下拉式菜单和窗体的弹出式菜单。,4.1.1 任务一 菜单控件,在Visual Basic中,菜单也是一个图形对象,即控件。与其他控件一样,菜单也需要定义它的外观和属性。在设计菜单和运行菜单时可以设置菜单的Caption属性、Enable属性、Visible属性、Ch
2、ecked属性及其他属性。每个菜单项都可以接收Click事件,当用鼠标或键盘选中该菜单项时,将调用该事件。,4.1.2 任务二 菜单编辑器,Visual Basic中,用菜单编辑器设计菜单和菜单项,或在已有的菜单上添加新菜单项、编辑已有的菜单选项以及修改和删除已有的菜单和菜单项。,进入菜单编辑器的方式有如下几种:l 选择“工具”“菜单编辑器”命令;l 单击常用工具栏中的“菜单编辑器”按钮;l按Ctrl+E组合键;l 在要建立菜单的窗体(此窗体为活动窗体)上右击,在弹出的快捷菜单中选择“菜单编辑器”命令。弹出“菜单编辑器”对话框,如图4-2所示。,图4-2“菜单编辑器”对话框,“菜单编辑器”窗口
3、分为3部分:数据区、编辑区和菜单项显示区。现分别介绍各部分的功能。,1数据区 数据区是菜单控件的属性区,用于输入和修改菜单项、设置菜单项的属性。由10个部分组成,各部分的作用如下。(1)标题:此文本框用于输入所建立菜单的标题及菜单中每个菜单项的标题(相当于菜单控件的Caption属性),也是显示在菜单中的字符,可以在标题中设置热键。如果要在菜单中添加一条分隔线,就在此输入一个减号(-)。,(2)名称:此文本框用于输入所建立的菜单和各菜单项的控制名(即菜单控件的Name属性),此项不在菜单中显示出来。Visual Basic中的菜单和每个菜单项都是控件,所以都要有一个控制名(其Name属性)。,
4、(3)索引:此文本框用来为用户建立的控件数组设立下标,相当于控件数组的Index属性。,(4)快捷键:此下拉列表框用来设置与某菜单项等价的快捷键。在程序运行时,按下快捷键会立刻运行一个菜单项。快捷键的赋值包括功能键与控制键的组合,它们出现在菜单中相应菜单项的右边。,(5)帮助上下文:此文本框用于输入在帮助文件(用HelpFile属性设置)中查找相应的帮助主题的数值。,(6)协调位置:此下拉列表框用于确定相应的菜单或菜单项的显示位置。该下拉列表框中有4个选项,其作用如下:l 0-None菜单项不显示;l 1-Left菜单项靠左显示;l 2-Middle菜单项居中显示;l 3-Right菜单项靠右
5、显示。,(7)复选:此复选框用于设置该菜单项标记(即菜单项的Checked属性),此选项通常是动态地加上或取消的,一般应当在程序代码中,根据执行情况设置。当“复选”属性设置为True时,可在相应的菜单项旁加上标记,表明该菜单项当前处于活动状态。,(8)有效:该复选框用于设置菜单项的操作状态(即Enable属性)。默认情况下,该属性为True,表示该选项为有效,可以对用户事件做出响应。若设置该选项为False,则相应的菜单项不响应用户事件。,(9)可见:该复选框用于确定相应的菜单项是否可见(即Visible属性)。若菜单项是可以执行的,则其可见属性为True,否则相应的菜单项不能执行,即其可见属
6、性为False。此时可以把它的“可见”属性设置为True,那么该菜单项将重新出现在菜单中。,(10)显示窗口列表:该复选框被选中(即框内为)时,将显示当前打开的一系列子窗口。该选项用于多文档应用程序。,2编辑区 编辑区有7个按钮,用于对输入的菜单项进行简单编辑。菜单在数据区输入,在菜单项显示区显示。这7个按钮的作用如下:,(1)左、右箭头:用来产生和取消内缩符号。单击一次右箭头可以产生一个内缩符号(4个点“.”),其作用是使当前菜单项的层次下降一层;单击一次左箭头,可以删除一个内缩符号,其作用是使当前菜单项的层次上升一层。,(2)上、下箭头:用来在菜单项显示区内移动菜单项的位置。把条形光标移动
7、到某个菜单项上,单击上箭头将使该菜单项上移,单击下箭头将使该菜单项下移。,(3)下一个:新建一个菜单项(与按【Enter】键作用相同)。,(4)插入:在当前菜单项之前插入一个新的菜单项。,(5)删除:删除当前菜单项。,3菜单项显示区 菜单项显示区在菜单设计窗口的下面,输入的菜单项在此区域显示,不同菜单项的层次通过内缩符号来表示。条形光标所在的菜单项为“当前菜单项”。,4.1.3 任务三 创建菜单的步骤,【例4-1】设计一个具有输入、输出和显示功能的菜单,该菜单可以把输入的一串字符显示出来。分析:根据题意,可以分为两个主菜单项,分别为“输入信息”和“显示信息”,它们各包括两个子菜单项。l“输入信
8、息”包括“输入”和“退出”。l“显示信息”包括“显示”和“清除”。建立菜单的具体操作步骤如下:,(1)建立控件 本例中需要输入和输出数据,因此需要建立一个文本框用以输入数据,建立一个标签用以输出数据,另外建立两个标签作为提示,各控件的属性设置如表4-1所示,窗体界面如图4-3所示。此外,还要设置标签output的背景色及Label1和Label2的显示方式,如图4-4所示。,图4-3 菜单控件设计,图4-4 菜单项设计,(2)设计菜单 下面利用菜单编辑器来设计各个菜单项,在设计菜单控件时应提供3种属性:标题、名称和内缩符号,一个内缩符号表示一层子菜单,没有内缩符号表示主菜单项。本例中有两个主菜
9、单项,每个主菜单项有两个子菜单。其属性设置如表4-2所示。具体操作步骤如下:,选择“工具”“菜单编辑器”命令,弹出“菜单编辑器”对话框。在“标题”文本框中输入“输入信息”(主菜单1),在菜单项显示区中出现同样的标题名称。,按【Tab】键(或用鼠标)把输入光标移到“名称”文本框。在“名称”文本框中输入“Input”,此时菜单项显示区中没有变化。将此菜单项的Enable(有效)和Visible(可见)属性都设置为True(本例中所有菜单项的此二属性皆如此)。单击编辑区中的“下一个”按钮,菜单项显示区中的条形光标下移,同时数据区的“标题”文本框和“名称”文本框被清空,光标回到“标题”文本框。在“标题
10、”文本框中输入“输入”,该信息同时在菜单项显示区中显示出来。,单击编辑区的右箭头,菜单显示区中的“输入”右移,同时其左侧出现一个内缩符号(.),表明“输入”是“输入信息”的下一级菜单。单击“快捷键”下拉列表框右端的下拉按钮,选择【Ctrl+I】作为“输入”菜单项的快捷键,此时,在该菜单项右侧出现Ctrl+I。单击编辑区中的“下一个”按钮,菜单项显示区的条形光标下移,左端自动出现内缩符号“.”。在“标题”文本框内输入“退出”,然后在“名称”文本框内输入“Quit”作为菜单项的名称。单击“快捷键”下拉列表框右端的下拉按钮,从中选出【Ctrl+Q】组合键作为“退出”菜单项的快捷键。,建立主菜单项“显
11、示信息”及其两个子菜单项的操作与上面所述的各步骤类似,不再重复。设计完成后的窗口如图4-4所示。此时,单击右上角的“确定”按钮,菜单的建立工作全部结束。设计完成后,窗体的顶行显示主菜单项,单击某个主菜单项,即可显示下拉菜单,如图4-5所示。,(3)为事件过程编写代码 如前所述,每个菜单项(包括主菜单项和子菜单项)都可以接收Click事件。每个子菜单项都对应一个Click事件过程。即程序运行后,只要单击某个子菜单项,就可以执行事件过程所定义的操作。,每个菜单项对应一个控件。菜单设计完成后,窗体上显示出如图4-5所示的菜单项,此时只要单击某个子菜单项,即可编写该菜单项的过程。例如,完成菜单设计后,
12、单击“输入信息”菜单项,显示“输入”和“退出”子菜单项,如果单击“输入”子菜单项,则进入程序代码窗口,并显示:,Private Sub Iput_Click()输入菜单代码 Text1.Text=End Sub,Private Sub disp_Click()显示菜单代码 output.Caption=Text1.TextEnd Sub,Private Sub clear_Click()清除菜单代码 Text1.Text=output.Caption=End Sub,4.1.4 任务四 菜单控件数组,在Visual Basic中,菜单也是图形对象,即控件,所以可以运用数组的概念。菜单控件数组的
13、作用主要有以下两方面:(1)用于动态地增加和删除菜单项;(2)简化了编程过程,用一段代码处理多个菜单项。,【例4-2】设计一个简易的文本编辑器,具有新建、编辑和保存一般文本文件的功能,如图4-7所示。,图4-7 简易文本编辑器,建立此菜单的具体操作步骤如下:(1)建立菜单控件 由于本菜单中有文本的输入和显示操作、文件的操作(如“打开”、“保存”等),因此需要有文本框和对话框,还应设置文本的多行属性和滚动条,如图4-8所示。,(2)设计菜单 此文本编辑器的每一菜单的下拉菜单中的菜单项是通过菜单控件数组完成的,只需指定其Index属性值即可。打开菜单编辑器,按表4-3所示输入每一个菜单项的各个属性
14、。所建立的菜单如图4-9所示。,图4-8 建立菜单控件,图4-9 用菜单控件数组建立菜单,(3)编写事件过程代码 菜单建立好以后,还需要为每一个事件过程编写相应的代码。下面是每一个菜单项的代码。,“文件”菜单的各个菜单项对应的事件代码如下:Private Sub File_Click(Index As Integer)n=Index Select Case n Case 0 新建 Text1.Text=Form1.Caption=未命名,Case 1 打开子菜单 CommonDialog1.ShowOpen 显示“打开”对话框 fname=CommonDialog1.FileName If f
15、name Then Text1.Text=Open fname For Input As#1 b=Do Until EOF(1)Line Input#1,nextline b=b&nextline&Chr(13)&Chr(10)Loop Close#1 Text1.Text=b End If Form1.Caption=fname,Case 2 保存子菜单 If Form1.Caption=未命名 Or Form1.Caption=Then CommonDialog1.ShowSave显示“另存为”对话框 fname=CommonDialog1.FileName Else fname=Form
16、1.Caption End If If fname Then Open fname For Output As#1 Print#1,Text1.Text Close#1 End If,Case 3 另存为子菜单 CommonDialog1.ShowSave显示“另存为”对话框 fname=CommonDialog1.FileName If fname Then Open fname For Output As#1 Print#1,Text1.Text Close#1 End If Case 4 关闭子菜单 Text1.Text=End End Select Text1.SetFocusEnd
17、Sub,“编辑”菜单的各个菜单项对应的事件代码如下:Private Sub Edi_Click(Index As Integer)i=Index Select Case i Case 0 剪切 Clipboard.SetText Text1.SelText Text1.SelText=Case 1 复制 Clipboard.SetText Text1.SelText Case 2 粘贴 Text1.SelText=Clipboard.GetText()Case 3 清除 Text1.SelText=End SelectEnd Sub,4.1.5 任务五 弹出式菜单,虽然下拉式菜单能够根据程序的
18、运行情况动态地调整其可见性、有效性,也可以动态地增减菜单项,但其对用户的当前操作跟踪不够。而弹出式菜单能以灵活的方式为用户提供更方便的操作。弹出式菜单是独立于窗体菜单栏而显示在窗体内的浮动菜单。弹出式菜单在窗体内的位置取决于单击鼠标键(通常单击右键)时指针的位置,弹出式菜单也称为“上下文菜单”或“快捷菜单”。,建立弹出式菜单的具体操作步骤如下:(1)先用菜单编辑器建立菜单。此步骤与下拉式菜单建立方法相同,区别在于必须把主菜单项的“可见(Visible)”属性设置为False。(2)用PopupMenu方法弹出显示。PopupMenu方法用来显示弹出式菜单,其格式如下:.PopupMenu,Fl
19、ags,X,Y,BoldCommand,说明:PopupMenu方法有6个参数,只有是必选的,其余都是可选的。省略时,在当前窗体内打开弹出式菜单,如果需要在非当前窗体中打开弹出式菜单时,必须指定窗体名。是在菜单编辑器中定义的主菜单项名。Flags参数是一个数值或符号常量,用来指定弹出式菜单的位置及行为,其取值分为两组,如表4-4和表4-5所示,一组用于指定菜单位置,另一组用于定义特殊的菜单行为。这两组参数可以单独使用,也可以联合使用。当联合使用时,每组中取一个常数,两个常数相加;若每组中取一个符号常量,则此两个常量用or相连。,X、Y分别用来指定弹出式菜单在窗体上的显示位置,X为横坐标,Y为纵
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb 菜单 工具栏 设计

链接地址:https://www.31ppt.com/p-5451990.html