奇怪的是, Visual basic将分离条也看成一个菜单项,它也需要 Caption和Name属性 而且它也有其它属性,分离条与菜单项的区别是分离条的 Caption属性必须是连字号即减号 也就是,当你设置了一个 Caption属性为“”的菜单项时,实际上你就设置了一个分离条 分离条的名字可以是 bar Filel之类,以表明分离条的位置 与无标题-记事本 文件¢)编辑)搜索)帮助0 新建①) 打开) 保存 另存为A) 分离条 页面设置〔 退出 分离条 五、菜单的各种简单属性 在 Menu editor里有许多确认框和一些正文框及一个下拉式的列表框,这些东西决定了 菜单的各种属性 1, Checked属性 这个属性值设置为真,将在菜单命令左边产生一个打勾的确认标志,你可以看看Fle Manager里的yiew菜单就可以了解什么是确认标志了。 2, Enabled属性 各种各样的用户会产生千奇百怪的操作,在许多Edt菜单里都会有不同形式的让菜单命 令模糊的情况。 Enabled属性就是用来做这件事的。上 nabled属性为真,则菜单命令是清晰的, Enabled属性为假,则菜单命令是模糊的,这时用户就不能选中这个菜单项了 3,Ⅴ isible属性 用户看见一个模糊的菜单而不能选的时候,有时会非常生气。所以,如果用户看不见这 个菜单命令时,他也就不会发无名之火了。如果把Ⅴ isible属性设为假,则菜单根本不会出 现在屏幕上。这样做比把 Enabled属性设为假显得更加干脆! 4, Index属性 可以生成菜单命令数组,用索引号区分开。例如向File菜单中添加一系列最近打开的文 件名。添加菜单可用Load方法 以上属性可以在运行时设置,形成动态的菜单的情况。 例如: mnuUndo enabled= false 你还可以改变 Caption等属性 munDo capti 在对窗体,命令钮和菜单有所了解后,工具箱里的其它控件就更加容易理解了。下面这 些控件的熟练运用,将使你做出漂亮的界面 六、生成弹出式菜单(或浮动菜单) 几乎每个 Windows应用程序都提供弹出式菜单,用户可以右键单击窗体或控件取得这 个菜单。弹出式菜单也属于普通菜单,只是不固定在窗体上,而是可以在任何地方显示 弹出式菜单用 PopupMenu方法调用。假设我们已经用 Menu editor生成了名为 mnuedit 的菜单,则可以在 MouseUp事件加入如下代码: If Button=2 Then PopupMenu mnuedit
奇怪的是,Visual Basic 将分离条也看成一个菜单项,它也需要 Caption 和 Name 属性, 而且它也有其它属性,分离条与菜单项的区别是分离条的 Caption 属性必须是连字号即减号。 也就是,当你设置了一个 Caption 属性为 “-” 的菜单项时,实际上你就设置了一个分离条, 分离条的名字可以是 barFile1 之类,以表明分离条的位置。 五、菜单的各种简单属性 在 Menu Editor 里有许多确认框和一些正文框及一个下拉式的列表框,这些东西决定了 菜单的各种属性。 1,Checked 属性 这个属性值设置为真,将在菜单命令左边产生一个打勾的确认标志,你可以看看 File Manager 里的 View 菜单就可以了解什么是确认标志了。 2,Enabled 属性 各种各样的用户会产生千奇百怪的操作,在许多 Edit 菜单里都会有不同形式的让菜单命 令模糊的情况。Enabled 属性就是用来做这件事的。Enabled 属性为真,则菜单命令是清晰的, Enabled 属性为假,则菜单命令是模糊的,这时用户就不能选中这个菜单项了。 3,Visible 属性 用户看见一个模糊的菜单而不能选的时候,有时会非常生气。所以,如果用户看不见这 个菜单命令时,他也就不会发无名之火了。如果把 Visible 属性设为假,则菜单根本不会出 现在屏幕上。这样做比把 Enabled 属性设为假显得更加干脆! 4,Index 属性 可以生成菜单命令数组,用索引号区分开。例如向 File 菜单中添加一系列最近打开的文 件名。添加菜单可用 Load 方法。 以上属性可以在运行时设置,形成动态的菜单的情况。 例如: mnuUndo.Enabled = False mnuProperty.Visible = False 你还可以改变 Caption 等属性。 mnuUndo.Caption = “Redo” 在对窗体,命令钮和菜单有所了解后,工具箱里的其它控件就更加容易理解了。下面这 些控件的熟练运用,将使你做出漂亮的界面。 六、生成弹出式菜单(或浮动菜单) 几乎每个 Windows 应用程序都提供弹出式菜单,用户可以右键单击窗体或控件取得这 个菜单。弹出式菜单也属于普通菜单,只是不固定在窗体上,而是可以在任何地方显示。 弹出式菜单用 PopupMenu 方法调用。假设我们已经用 Menu Editor 生成了名为 mnuedit 的菜单,则可以在 MouseUp 事件加入如下代码: If Button = 2 Then PopupMenu mnuedit
下面将用一个实例展示动态菜单和弹出式菜单。 File Edit Runtime Menu Eile EditRuntime Menu option #3 opti on #4 右击表单看看! 右击表单看看 Remove runtime option Remove runtime option 左图表单显示了一个弹出式菜单,在表单的空白处右击鼠标就可得到。左图表单显示 了一个动态菜单,单击 Add runtime option钮一下就会使菜单 Runtime menu增加一项,而单 击 Remove runtime option钮一下就会使菜单 Runtime menu减少一项。其源代码如下: Private Sub cmdadd Click If rtmenu=l Then mnuoption(0).Caption="Runtime Option Load mnuoption(rtmenu) mnuoption(rtmenu) Caption="option #" rtmenu Private Sub cmdremove Click MsgB Exit sub End if rtmenu= rtmenu-I Sub Private Sub Form MouseUp( Button As Integer, Shift As Integer, X As Single, Y As Single If Button=2 Then Popup Menu mnuedit §4框架,确认框和选项钮
下面将用一个实例展示动态菜单和弹出式菜单。 左图表单显示了一个弹出式菜单,在表单的空白处右击鼠标就可得到。左图表单显示 了一个动态菜单,单击 Add runtime option 钮一下就会使菜单 Runtime Menu 增加一项,而单 击 Remove runtime option 钮一下就会使菜单 Runtime Menu 减少一项。其源代码如下: Dim rtmenu Private Sub cmdadd_Click() rtmenu = rtmenu + 1 If rtmenu = 1 Then mnuoption(0).Caption = "Runtime Option" Load mnuoption(rtmenu) mnuoption(rtmenu).Caption = "option #" & rtmenu End Sub Private Sub cmdremove_Click() If rtmenu = 0 Then MsgBox "menu is empty" Exit Sub End If Unload mnuoption(rtmenu) rtmenu = rtmenu - 1 End Sub Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu mnuedit End Sub §4 框架,确认框和选项钮
回区 Frame1 厂 CheckI C Option 确认框和选项钮就好比多项选择和单项选择,在考试时选择题总比简答题要好做, 因为你可以用瞎蒙的策略。用户界面设计的保持简单的原则使确认框和选项钮成为有用的框 件。确认框和选项钮用于向程序输入信息。确认框选中时会在小方框里打一个钩,菜单设计 窗口里就有这种确认框的例子 选项钮选中时会在小圆圈里点一个点。它们的主要属性除了Name, Caption等,还有: 1, value属性 决定它们是否被选中的属性。 Alignment属性 决定它们的对齐方式 有两道选择题或更多时,我们就必须对它们进行分组。这种分组需要借助框架控件 组的方法是 1,在工具箱里单击 Frame控件 2,在窗体里拖曳鼠标画出框架 3,在工具箱里单击确认框或选项钮控件; 4,在框架里画确认框或选项钮: 5,把所需的确认框或选项钮都画好。 §5正文框和标签 □区 Labell 正文框通常用于向计算机输入信息,而标签通常用于输出信息。正文框是一个十分重要 的控件,因为由确认框和选项钮向程序输入的信息毕竞只有少数的几条信息而已。标签和正 文框的区别很小,标签可以看成是一个在运行时不能修改正文的正文框。因此标签主要用于 输出信息。标签是生活中不可缺少的部分,比如教室里的“团结,勤奋,严谨,活泼”就是 个每天不得不面对的标签 l, BorderStyle属性 决定了正文框和标签的边框形式。 2,正文框的Text属性和标签的 Caption属性 这两个属性其实是一样的,它决定了用户在屏幕上看到的东西,只不过正文框的Text属 性在运行时可以直接在正文框里修改。 3, Alignment属性
一、确认框和选项钮就好比多项选择和单项选择,在考试时选择题总比简答题要好做, 因为你可以用瞎蒙的策略。用户界面设计的保持简单的原则使确认框和选项钮成为有用的框 件。确认框和选项钮用于向程序输入信息。确认框选中时会在小方框里打一个钩,菜单设计 窗口里就有这种确认框的例子。 选项钮选中时会在小圆圈里点一个点。它们的主要属性除了 Name,Caption 等,还有: 1,Value 属性 决定它们是否被选中的属性。 2,Alignment 属性 决定它们的对齐方式。 二、有两道选择题或更多时,我们就必须对它们进行分组。这种分组需要借助框架控件。 分组的方法是: 1,在工具箱里单击 Frame 控件; 2,在窗体里拖曳鼠标画出框架; 3,在工具箱里单击确认框或选项钮控件; 4,在框架里画确认框或选项钮; 5,把所需的确认框或选项钮都画好。 §5 正文框和标签 正文框通常用于向计算机输入信息,而标签通常用于输出信息。正文框是一个十分重要 的控件,因为由确认框和选项钮向程序输入的信息毕竟只有少数的几条信息而已。标签和正 文框的区别很小,标签可以看成是一个在运行时不能修改正文的正文框。因此标签主要用于 输出信息。标签是生活中不可缺少的部分,比如教室里的“团结,勤奋,严谨,活泼”就是 一个每天不得不面对的标签。 1,BorderStyle 属性 决定了正文框和标签的边框形式。 2,正文框的 Text 属性和标签的 Caption 属性 这两个属性其实是一样的,它决定了用户在屏幕上看到的东西,只不过正文框的 Text 属 性在运行时可以直接在正文框里修改。 3,Alignment 属性
这个属性决定正文或标题的排列方式。 正文框的 Multiline属性 如果正文框里的字太多了,超过了正文框的宽度,那么计算机就在某个我们不知道的地 方显示这行字,所以我们要设置 Multiline属性为True,这样正文框就有了字换行的能力 5,正文框的 Passwordchar属性 如果用户从事的是一种掌握大量金钱或机密的工作的话(此类用户肯花大钱来买关于计 算机的东西),那么他就需要对自己的工作遮遮掩掩,在 sual basic里你可以作一个口令正 文框来实现这种遮掩。方法是 (1)选中作为口令正文框的正文框。(它的周围出现八个小方块) (2)按F4键打开属性窗口 (3)设置 Multiline属性为 False (4)设置 Passwordchar为用于掩盖的字符。(只能是一个字符,比如*号) 木率冰本水 第三步使口令正文框只有一行,因为 Multiline属性为True将使 Password属性失效。 Visual Basic认为口令不必太长,因为太长的口令更加容易忘记。 6,正文框的 Maxlength属性 为了防止一些古怪用户输入太多的废话,程序员有限制正文框正文长度的权力,这就是 Maxlength属性。如果 Maxlength属性设置为零,那么正文框就只受计算机内存的限制了 , Label的 AutoSize属性和 WordWrap属性 这两个属性在一起搭配使用总是让人混淆,以至于Ⅴ isual Basic附带的示例程序里有 个程序里有这两个属性的例子,它的路径通常是c: vblsampleslcontrols\control vbp。在 Visual Basic里运行这个例子,选择 Options菜单的 Word Wrap and Auto Size。 Auto Size属性使标签 自动地扩大缩小以适应标签的 Caption属性,但是它只会水平伸展。 Word Wrap属性使标签 具有字换行处理的能力 为了使标签具有垂直伸展和字换行处理,必须设置它的 AutoSize属性和 WordWrap属性 同时为True。 AutoSize属性为 False, WordWrap属性为 False时,若标签不够高而 Caption太长时, Caption将被切割掉 AutoSize属性为 False, Word Wrap属性为True时,情况同上 Autosize属性为True, WordWrap属性为Fase时,表示可以水平伸展,但只显示一行信 息 Locked属性 程序员可以阻止用户改变文本框的内容,用户只可以看文本而不能改变它。这是 Visual Basic40的新功能
这个属性决定正文或标题的排列方式。 4,正文框的 Multiline 属性 如果正文框里的字太多了,超过了正文框的宽度,那么计算机就在某个我们不知道的地 方显示这行字,所以我们要设置 Multiline 属性为 True,这样正文框就有了字换行的能力。 5,正文框的 PasswordChar 属性 如果用户从事的是一种掌握大量金钱或机密的工作的话(此类用户肯花大钱来买关于计 算机的东西),那么他就需要对自己的工作遮遮掩掩,在 Visual Basic 里你可以作一个口令正 文框来实现这种遮掩。方法是: (1)选中作为口令正文框的正文框。(它的周围出现八个小方块) (2)按 F4 键打开属性窗口。 (3)设置 Multiline 属性为 False。 (4)设置 PasswordChar 为用于掩盖的字符。(只能是一个字符,比如 * 号) 第三步使口令正文框只有一行,因为Multiline属性为True将使Password属性失效。Visual Basic 认为口令不必太长,因为太长的口令更加容易忘记。 6,正文框的 Maxlength 属性 为了防止一些古怪用户输入太多的废话,程序员有限制正文框正文长度的权力,这就是 Maxlength 属性。如果 Maxlength 属性设置为零,那么正文框就只受计算机内存的限制了。 7,Label 的 AutoSize 属性和 WordWrap 属性 这两个属性在一起搭配使用总是让人混淆,以至于 Visual Basic 附带的示例程序里有一 个程序里有这两个属性的例子,它的路径通常是 c:\vb\samples\controls\control.vbp。在 Visual Basic 里运行这个例子,选择 Options 菜单的 WordWrap and AutoSize。AutoSize 属性使标签 自动地扩大缩小以适应标签的 Caption 属性,但是它只会水平伸展。WordWrap 属性使标签 具有字换行处理的能力。 为了使标签具有垂直伸展和字换行处理,必须设置它的 AutoSize 属性和 WordWrap 属性 同时为 True。 AutoSize 属性为 False,WordWrap 属性为 False 时,若标签不够高而 Caption 太长时, Caption 将被切割掉。 AutoSize 属性为 False,WordWrap 属性为 True 时,情况同上。 AutoSize 属性为 True,WordWrap 属性为 False 时,表示可以水平伸展,但只显示一行信 息。 Locked 属性 程序员可以阻止用户改变文本框的内容,用户只可以看文本而不能改变它。这是 Visual Basic 4.0 的新功能
Fon□x §6图形框( Picture box)和图象框( Image box) Picture box和 Image box是用来把图形放入程序里的。 Picture box和 Image box可以显 示几种不同格式的图形。 Bitmap文件(BMP或DB)、lcon文件(ICO或CUR)、 Metafile 图元文件(WMF)、增强型图元文件(EMF)、JPG(JPG)及GIF(GIF)文件。在 Visual basic 里 Microsoft大概送给了我们几百个上述前三类文件,它们的路径通常是:c: vblbitmaps、 c: wvblicons、c: rbimetafile它们的主要属性有: 1,设置 Picture box和 Image box的 Picture属性 (1)单击 Picture box或 Image box。 (2)按F4键打开属性窗口。 (3)单击 Picture属性 (4)单击设置框右边的省略号, Visual basic将显示 Load picture对话框 (5)选择用户需要的文件,单击Ok键 则 Visual basic将图形装入 Picture Box或 Image box。如果想在程序运行期间装入或删除 图形,就需要用程序代码来实现了。我们可以使用 Load Picture函数。例 装入图形 img My Hand. Picture= LoadPicture("c: graphicshand bmp") 删除图形 My Hand. Picture= Load Picture(“”) 2, Picture box和 Image Box的 Border Style属性 如同正文框和标签一样,你可以设计 Picture box和 Image box的边框 3, Stretch属性和 AutoSize属性 Image box只有 Stretch属性,而 Picture box只有 AutoSize属性 AutoSize属性设为True,则 Picture box改变自己的大小来适应其中的图形 Stretch属性设为True,则 Image box中的图形将改变自己的大小来适应外面的边框。 §7Line和 Shape控件 总有一些除了装饰作用没有别的功能的东西。如Line和 Shape控件 1,Line和 Shape的 BorderColor属性 般来说边界颜色是黑的,但你也可显示你喜爱的颜色。在属性窗口里单击 BorderColor 属性,再单击省略号, Visual basic将显示一块调色板,在调色板里选择你喜爱的颜色。 2,Line和 Shape的 Border Width属性 这个属性决定线的粗细 3,Line和 Shape的 BorderStyle属性
§6 图形框(Picture Box)和图象框(Image Box) Picture Box 和 Image Box 是用来把图形放入程序里的。Picture Box 和 Image Box 可以显 示几种不同格式的图形。Bitmap 文件(.BMP 或.DIB)、Icon 文件(.ICO 或.CUR)、Metafile 图元文件(.WMF)、增强型图元文件(.EMF)、JEPG(.JPG)及 GIF(.GIF)文件。在 Visual Basic 里 Microsoft 大概送给了我们几百个上述前三类文件,它们的路径通常是:c:\vb\bitmaps、 c:\vb\icons、c:\vb\metafile。它们的主要属性有: 1,设置 Picture Box 和 Image Box 的 Picture 属性 (1)单击 Picture Box 或 Image Box。 (2)按 F4 键打开属性窗口。 (3)单击 Picture 属性。 (4)单击设置框右边的省略号,Visual Basic 将显示 Load Picture 对话框。 (5)选择用户需要的文件,单击 Ok 键。 则 Visual Basic 将图形装入 Picture Box 或 Image Box。如果想在程序运行期间装入或删除 图形,就需要用程序代码来实现了。我们可以使用 Load Picture 函数。例: 装入图形 imgMyHand.Picture = LoadPicture ( “c:\graphics\hand.bmp” ) 删除图形 imgMyHand.Picture = LoadPicture ( “ ” ) 2,Picture Box 和 Image Box 的 BorderStyle 属性 如同正文框和标签一样,你可以设计 Picture Box 和 Image Box 的边框。 3,Stretch 属性和 AutoSize 属性 Image Box 只有 Stretch 属性,而 Picture Box 只有 AutoSize 属性。 AutoSize 属性设为 True,则 Picture Box 改变自己的大小来适应其中的图形。 Stretch 属性设为 True,则 Image Box 中的图形将改变自己的大小来适应外面的边框。 §7 Line 和 Shape 控件 总有一些除了装饰作用没有别的功能的东西。如 Line 和 Shape 控件。 1,Line 和 Shape 的 BorderColor 属性 一般来说边界颜色是黑的,但你也可显示你喜爱的颜色。在属性窗口里单击 BorderColor 属性,再单击省略号,Visual Basic 将显示一块调色板,在调色板里选择你喜爱的颜色。 2,Line 和 Shape 的 BorderWidth 属性 这个属性决定线的粗细。 3,Line 和 Shape 的 BorderStyle 属性