第9章菜单、对话框及多重雷体 9.1菜单 9.2对话框掴 9.3多重窗体程序 9.4 Visual Basic工程结构 9.5综合应用程序举例
第9章 菜单、对话框及多重窗体 9.1 菜单 9.2 对话框 9.3 多重窗体程序 9.4 Visual Basic 工程结构 9.5 综合应用程序举例
9.1 菜单 菜单的基本作用有两个:一个是提供灵活的人 机对话界面,将应用程序的各种操作分组显示在界 面上,方便用户选择;另一个是管理应用程序,控 制各种功能模块的执行。 在实际的应用中,通常使用到两种菜单:下拉 式菜单和弹出式菜单
9.1 菜单 菜单的基本作用有两个:一个是提供灵活的人 机对话界面,将应用程序的各种操作分组显示在界 面上,方便用户选择;另一个是管理应用程序,控 制各种功能模块的执行。 在实际的应用中,通常使用到两种菜单:下拉 式菜单和弹出式菜单
9.1.1下拉式菜单 L下拉式菜单结构 >VB中设计下拉式菜单时,主要设计两个部分 ■主菜单栏:它包含若干个菜单项。 ·各级子菜单,每一级子菜单中的各项可能是 个可执行的菜单命令,或者是将引导出下一级 的子菜单,也可能是分隔条。 2.设计下拉式菜单 >VB菜单编辑器”窗口一般分为三个部分: ■属性区 ■编辑区 ·显示区
9.1.1 下拉式菜单 ➢ VB中设计下拉式菜单时,主要设计两个部分: ▪ 主菜单栏:它包含若干个菜单项。 ▪ 各级子菜单,每一级子菜单中的各项可能是一 个可执行的菜单命令,或者是将引导出下一级 的子菜单,也可能是分隔条。 ➢ VB“菜单编辑器”窗口一般分为三个部分: ▪ 属性区 ▪ 编辑区 ▪ 显示区 1.下拉式菜单结构 2.设计下拉式菜单
菜单命令的主要属性 属性名 属性值 说明 标题(Caption 字符型 菜单项显示字符串 名称Name) 字符型 菜单控件名称 索引 整型 指定菜单控件数组序号 快捷键 字符型 指定菜单命令的快捷键 复选 逻辑型 是否允许菜单项设置复选框 有效 逻辑型 指定菜单项是否可操作 可见 逻辑型 是否将菜单项显示在菜单上 显示窗口列表 逻辑型 在MDI中指定是否有子窗体列表
菜单命令的主要属性 属性名 属性值 说明 标题(Caption) 字符型 菜单项显示字符串 名称(Name) 字符型 菜单控件名称 索引 整型 指定菜单控件数组序号 快捷键 字符型 指定菜单命令的快捷键 复选 逻辑型 是否允许菜单项设置复选框 有效 逻辑型 指定菜单项是否可操作 可见 逻辑型 是否将菜单项显示在菜单上 显示窗口列表 逻辑型 在MDI中指定是否有子窗体列表
>分隔线:在标题栏中填入“-”,则在菜单中显示 一条分隔线。 键盘选择:在菜单项标题某字母前加“&”字符, 可使该字符成为访问键(按At+该字符,可以选择 相应的菜单项)
➢ 分隔线:在标题栏中填入“ - ”,则在菜单中显示 一条分隔线。 ➢ 键盘选择:在菜单项标题某字母前加“&”字符, 可使该字符成为访问键(按Alt+该字符,可以选择 相应的菜单项)
例9-1]标签的显示和隐藏 例[9-1】标签的显示和隐藏一▣☒ Private Sub Hide ClickO 操作 显示 Label1.Visible False 隐藏 End Sub Private Sub Show ClickO 欢迎使用V6.可 Labell.Visible True End Sub
例[9-1] 标签的显示和隐藏 Private Sub Hide_Click() Label1.Visible = False End Sub Private Sub Show_Click() Label1.Visible = True End Sub
例9-2]设计一个应用程序,通过菜单完成两个整数的加减 运算。 Private Sub Add Click( Label1.Caption =" Label3.Caption Val(Text1.Text)+Val(Text2.Text) End Sub 例[9-2】整数加减运算 ▣☒ Private SubSub Click() 运算C)退出) 加法Ctr1+A Label1.Caption = 减法Ctrl+s Label3.Caption Val(Text1.Text)-Val(Text2.Text) End Sub Private Sub Exit Click( End 28 46 -18 End Sub
例[9-2] 设计一个应用程序,通过菜单完成两个整数的加减 运算。 Private Sub Add_Click() Label1.Caption = ″+″ Label3.Caption = Val(Text1.Text) + Val(Text2.Text) End Sub Private Sub Sub_Click() Label1.Caption = ″-″ Label3.Caption = Val(Text1.Text) - Val(Text2.Text) End Sub Private Sub Exit_Click() End End Sub
菜单的增减 Load菜单项控件数组ndex):从菜单控件数组中添加 一个新的菜单项。 UnLoad菜单项控件数组ndex):从菜单控件数组中删 除一个菜单项。 参见例9-3
菜单的增减 Load 菜单项控件数组(Index):从菜单控件数组中添加 一个新的菜单项。 UnLoad菜单项控件数组(Index):从菜单控件数组中删 除一个菜单项。 参见例9-3
例9-31在例9-2的代码基础上添加如下代码 Private Sub Form ClickO) If AppendCalNo =0 Then AppendCalNo =AppendCalNo +1 Load appendcal(AppendCalNo) appendcal((AppendCalNo),Caption="乘法y appendcal(AppendCalNo).Visible True AppendCalNo =AppendCalNo +1 Load appendcal(AppendCalNo) appendcal((AppendCalNo),Caption="除法” appendcal(AppendCalNo).Visible True End If End Sub (待续)
例[9-3] 在例9-2的代码基础上添加如下代码 Private Sub Form_Click() If AppendCalNo = 0 Then AppendCalNo = AppendCalNo + 1 Load appendcal(AppendCalNo) appendcal(AppendCalNo).Caption = "乘法" appendcal(AppendCalNo).Visible = True AppendCalNo = AppendCalNo + 1 Load appendcal(AppendCalNo) appendcal(AppendCalNo).Caption = "除法" appendcal(AppendCalNo).Visible = True End If End Sub (待续)
(接上页) Private Sub Form DblClick() Dim iAs Integer Do While AppendCalNo >0 Unload appendcal(AppendCalNo) AppendCalNo =AppendCalNo-1 Loop End Sub (待续)
(接上页) Private Sub Form_DblClick() Dim i As Integer Do While AppendCalNo > 0 Unload appendcal(AppendCalNo) AppendCalNo = AppendCalNo - 1 Loop End Sub (待续)