210 likes | 378 Views
Visual Basic 程序设计教程. 第 10 章 菜单与工具栏. 10.1 使用菜单 10.1.1 下拉式菜单 10.1.2 弹出式菜单 10.2 使用工具栏 10.2.1 用手工方式制作工具栏 10.2.2 使用 Toolbar 控件与 ImageList 控件. 10.1 使用菜单. 10.1.1 下拉式菜单 1. 菜单编辑器 【 例 10-1】 为例 4-15 中的电子标题板增加一个菜单,利用菜单来控制标题板的内容、字体、字体风格等,如图 10-4 所示。. 图 10-4 利用菜单控制标题板 :.
E N D
第10章 菜单与工具栏 10.1使用菜单 10.1.1 下拉式菜单 10.1.2 弹出式菜单 10.2使用工具栏 10.2.1 用手工方式制作工具栏 10.2.2 使用Toolbar控件与ImageList控件
10.1使用菜单 10.1.1 下拉式菜单 1. 菜单编辑器 【例10-1】为例4-15中的电子标题板增加一个菜单,利用菜单来控制标题板的内容、字体、字体风格等,如图10-4所示。 图10-4 利用菜单控制标题板 :
(1) 打开菜单编辑器。 (2) 编写菜单项代码。 编写“文本内容”项Txt的Click事件代码: Private Sub Txt_Click() temp = InputBox("请输入标题板的新内容", "输入", Label1.Caption) If temp <> "" Then Label1.Caption = temp End If End Sub
编写“文本字体”中4个菜单选项的Click事件代码:编写“文本字体”中4个菜单选项的Click事件代码: Private Sub song_Click() Label1.FontName = "宋体" End Sub Private Sub li_Click() Label1.FontName = "隶书" End Sub Private Sub kai_Click() Label1.FontName = "楷体_GB2312" End Sub Private Sub hei_Click() Label1.FontName = "黑体" End Sub
编写“文本风格”中3个菜单选项的Click事件代码:编写“文本风格”中3个菜单选项的Click事件代码: Private Sub bld_Click() bld.Checked = Not bld.Checked Label1.FontBold = bld.Checked End Sub Private Sub Itl_Click() Itl.Checked = Not Itl.Checked Label1.FontItalic = Itl.Checked End Sub Private Sub Undrln_Click() Undrln.Checked = Not Undrln.Checked Label1.FontUnderline = Undrln.Checked End Sub
3. 菜单控件数组 【例10-2】将例9-2中的命令按钮改为菜单控制,并在此基础上增加“编辑”子菜单。使用菜单控件数组设计的文本编辑器。 编写菜单项代码 : 编写“编辑”菜单中的菜单控件数组Edi的Click事件代码: Private Sub edi_Click(Index As Integer) i = Index
Clipboard.SetText Text1.SelText Select Case i Case 0 '剪切 Clipboard.SetText Text1.SelText Text1.SelText = "" Case 1 '复制 Case 2 '粘贴 Text1.SelText = Clipboard.GetText() Case 3 '删除 Text1.SelText = "" End Select End Sub
4. 菜单项的可用与不可用 【例10-3】当文本中没有被选中的内容时,剪切、复制和删除等功能被关闭——菜单项呈灰色。一旦选中某些文本后,剪切、复制和删除等功能就可以被使用。如图10-6所示。 图10-6 菜单项的可用与不可用
只需在例10-2的基础上增加“编辑”菜单项Edit的Click事件代码:只需在例10-2的基础上增加“编辑”菜单项Edit的Click事件代码: Private Sub Edit_Click() edi(0).Enabled = IIf(Text1.SelLength = 0, False, True) edi(1).Enabled = IIf(Text1.SelLength = 0, False, True) edi(3).Enabled = IIf(Text1.SelLength = 0, False, True) End Sub
键抬起(KeyUp)事件代码: Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) edi(0).Visible = IIf(Text1.SelLength = 0, False, True) edi(1).Visible = IIf(Text1.SelLength = 0, False, True) edi(3).Visible = IIf(Text1.SelLength = 0, False, True) End Sub 鼠标键抬起(MouseUp)事件代码:
Private Sub Text1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) edi(0).Visible = IIf(Text1.SelLength = 0, False, True) edi(1).Visible = IIf(Text1.SelLength = 0, False, True) edi(3).Visible = IIf(Text1.SelLength = 0, False, True) End Sub
10.1.2 弹出式菜单 语法为:[〈窗体名〉.] PopupMenu〈菜单名〉[, flags [,x [, y [, boldcommand ]]]] 【例10-4】在例10-1中实现弹出式菜单(如图10-8)。 图10-8 自定义的弹出式菜单
只需增加标签和窗体的MouseDown事件代码: Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu Styl, 6 End If End Sub Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu Nam, 6 End If End Sub
10.2使用工具栏 • 10.2.1 用手工方式制作工具栏 • 【例10-5】在例10-3的文本编辑器中增加一个自定义的工具栏 • 修改应用程序用户界面 • (2) 设置新增对象属性。 • (3) 修改及编写程序代码。 • 修改窗体的事件代码: • Private Sub Form_Resize() • With Text1 • .Left = 0
.Top = Picture1.Height .Height = Form1.ScaleHeight - Picture1.Height .Width = Form1.ScaleWidth End With End Sub 编写命令按钮数组Command1()的Click事件代码: Private Sub Command1_Click(Index As Integer) File_Click (Index) End Sub
10.2.2 使用Toolbar控件与ImageList控件 【例10-6】在例10-5的文本编辑器中改用工具栏控件设计新的工具栏(如图10-15) 图10-16 添加工具栏控件并修改属性 图10-15 带有工具栏的文本编辑器
在例10-5的基础上作如下修改 : (1) 修改应用程序用户界面 (2) 通过“属性页”对话框来设置工具栏控件与图像列表控件的属性 (3) 修改及编写程序代码。 修改窗体的事件代码: Private Sub Form_Resize() With Text1 .Top = Toolbar1.Height .Left = 0 .Height = Form1.ScaleHeight - Toolbar1.Height .Width = Form1.ScaleWidth End With
End Sub 编写工具栏按钮的事件代码: Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) n = Button.Index Select Case n Case 2, 3, 4 File_Click (n - 2) 图10-18 具有Office 97 风格的工具栏 Case 6 Text1.FontBold = Button.Value Case 7 Text1.FontItalic = Button.Value Case 8 Text1.FontUnderline = Button.Value End Select End Sub
10.1 简述在窗体中添加菜单的一般方法。 10.2 在例10-1中增加一个“颜色”菜单,包含“窗体颜色”、“文本颜色”两项。使得程序运行时可以调整窗体或文本的颜色。 10.3 为例10-3中的文本编辑器增加一个“字体”子菜单。 图10-19 模糊查找 10.4 修改习题9.9,使用菜单来控制数据的编辑、查找。 (1) 按姓名查找。 (2) 按工资范围查找。 (3) 按工作证号查找。 使用模糊查找,将满足条件的记录显示在列表框中,参考界面如图10-19所示。
10.5 在习题10.4中使用工具栏按钮,来控制记录的滚动。 10.6 为例10-5中的工具栏按钮编写代码。 10.7 在例10-1中增加一个控制字体风格的工具栏 图10-19 模糊查找