Presentation is loading. Please wait.

Presentation is loading. Please wait.

第八章 界面设计 全 国 高 等 医 药 院 校 药 学 类 规 划 教 材 计算机程序设计(第二版)

Similar presentations


Presentation on theme: "第八章 界面设计 全 国 高 等 医 药 院 校 药 学 类 规 划 教 材 计算机程序设计(第二版)"— Presentation transcript:

1 第八章 界面设计 全 国 高 等 医 药 院 校 药 学 类 规 划 教 材 计算机程序设计(第二版)

2 目 录 沈阳药科大学计算计教研室 第一节 常用窗体控件 第二节 对话框控件 第三节 菜单设计 第四节 工具栏设计 第五节 多窗体设计 2

3 第一节 常用窗体控件 8.1 常用窗体控件

4 Visual Basic中控件的种类 第一节 常用窗体控件 1. 标准控件(内部控件) 2. ActiveX控件 3. 可插入对象
第一节 常用窗体控件 Visual Basic中控件的种类 1. 标准控件(内部控件) 启动VB后,自动在工具箱中列出的20个控件。 2. ActiveX控件 由VB和第三方提供,可重复使用的代码和数据。扩展名为.OCX,通常存放在系统根目录下的SYSTEM子目录中。 ActiveX控件在使用之前,需先被加载到工具箱中,方法是: 1) 选择“工程/部件”菜单,对话框中包含全部已登记ActiveX控件。 2) 选定所需ActiveX控件左边的复选框。 3) 单击“确定”。该控件就添于工具箱中。 3. 可插入对象 指Windows应用程序对象,例如“Microsoft Excel工作表”。

5 第一节 常用窗体控件 8.1.1 分组控件 每个分组控件本身就是一个容器,可以在这些分组控件上放置其它控件,如单选钮、文本框等,这样:
第一节 常用窗体控件 8.1.1 分组控件 每个分组控件本身就是一个容器,可以在这些分组控件上放置其它控件,如单选钮、文本框等,这样: 第一:不同分组控件中的对象相互独立。 第二:不仅可以提供视觉上的分组而且还可以实现总体的显示或隐藏操作。 常见的分组控件有框架(Frame)、选项卡(SSTab)、图片框(PictureBox)等。

6 第一节 常用窗体控件 8.1.1.1 框架(Frame) 1. 向框架中添加对象的方法 2. 重要属性 1)向框架中添加新对象
第一节 常用窗体控件 框架(Frame) 1. 向框架中添加对象的方法 1)向框架中添加新对象 2)将现有对象移动到框架中 2. 重要属性 1)Caption 2)Enabled 3)Visible

7 第一节 常用窗体控件 3. 事件 4. 应用实例 框架可以响应Click和DbClick事件。但几乎没有应用。
第一节 常用窗体控件 3. 事件 框架可以响应Click和DbClick事件。但几乎没有应用。 4. 应用实例 通过选择药品和病症,在文本框中显示正确的信息。

8 第一节 常用窗体控件 SSTab(选项卡) SSTab不是标准控件,使用前需通过“工程/部件” 将“Microsoft Tabbed Dialogue Control6.0”添加至工具箱。 1. 重要属性 1)Tabs 设置选项卡的个数,上图中为六。 2)TabsPerRow 设置每行可以显示的选项卡个数,下图中为二。 3)Tab Tab为选项卡的编号,从0开始。该属性可以 返回目前处于激活状态的选项卡编号,也可以通过 修改该属性的值来决定哪个选项卡被激活。

9 第一节 常用窗体控件 2. 事件 3. 应用实例 SSTab可以响应Click和DbClick事件。但很少用。语法格式为:
第一节 常用窗体控件 2. 事件 SSTab可以响应Click和DbClick事件。但很少用。语法格式为: Private Sub SSTab控件名_Click(PreviousTab As Integer) 语句块 End Sub 其中:PreviousTab参数为本次单击前处于激活状态的选项卡编号 3. 应用实例 设计如图所示的实验动物出库管理软件,要求在 离开“鼠”、“兔”、“狗”选项卡(Tab编号分别为0、 1、2)进入任意其它选项卡时,即时计算合计金额。 完毕单击“退出”结束程序。

10 第一节 常用窗体控件 8.1.2 列表选择控件 列表选择控件的功能是为用户提供一系列的候选项供用户选择。最常用的是列表框和组合框。

11 第一节 常用窗体控件 8.1.2.1 列表框(ListBox)
第一节 常用窗体控件 列表框(ListBox) ListBox通过提供多个候选项供用户选择,达到与用户交互的目的。用户只能从给定的候选项中选择,不能添加和修改候选项 1.重要属性 1)Text 当前被选定条目的内容,只能在运行模式下设置 或引用。图中List1.Text的值为“兔子”。通过该属性可 以获得用户的选择结果。 2)ListIndex 程序运行时被选定条目的序号(从零开始) ,只能在 运行模式下设置或引用。若没选中任何条目,ListIndex 值为-1。图中ListIndex的值为3。通过该属性可以知用户 选择的是第几项。

12 第一节 常用窗体控件 3)List 既可在设计模式下设置,也可在运行模式下设置或引用。
第一节 常用窗体控件 3)List 既可在设计模式下设置,也可在运行模式下设置或引用。 List属性为字符型数组,下标从0开始。图中第一项List1.List(0)的值为“小鼠” 。 通过该属性可以在运行模式下修改某个条目的内容。 注意: List1.Text和List1.List(List1.ListIndex) 两种写法等价。 4)ListCount 列表框中项目的数量,只能在运行模式下引用。 图中List1.ListCount的值为8。 最后一个条目的编号为ListCount-1

13 第一节 常用窗体控件 5)Sorted 设置程序运行时列表框内的条目是否按照字符顺序升序排列显示,只能在设计模式下设置。有两种取值情况True和False。 6)MultiSelect 设置在一个列表框中能否同时选择多个条目。有三种取值情况: 0—None 禁止多选(缺省)。 1—Simple 简单多选。 2—Extended 扩展多选。

14 第一节 常用窗体控件 7)Selected 该属性是布尔型数组,每个元素值表示对应条目目前是否被选中。 用于允许多选时,获得用户的选择结果。
第一节 常用窗体控件 7)Selected 该属性是布尔型数组,每个元素值表示对应条目目前是否被选中。 用于允许多选时,获得用户的选择结果。 只能在运行模式下引用。 8)SelCount 当MultiSelect属性为1(Simple)或2(Extended)时,用于返回列表框中目前被选中条目的个数。通常它与Selected一起使用,以获得用户的选择结果。 9) Style (设计模式下)设置列表框的风格。有两种取值情况: 0—Standard,标准型,(缺省) 1—CheckBox,复选框形式,如图所示。 注意:当Style为1时MultiSelect属性只能为0,但 此时允许多选(前面带有复选框,当然可以进行复选了)。

15 第一节 常用窗体控件 2. 常用方法 1)AddItem 用于向列表框中添加新的条目。语法格式为:
第一节 常用窗体控件 2. 常用方法 1)AddItem 用于向列表框中添加新的条目。语法格式为: 对象.AddItem Item [,Index] Item:必须是字符串表达式,是新增条目的具体内容。 Index:新增条目的位置,省略时添到最后。Index=0为第一项。 2)RemoveItem 用于从列表框中删除条目。语法格式为: 对象.RemoveItem Index Index:被删除条目的编号。对于顶端的第一个条目,Index为0 3) Clear Clear方法用于清除列表框中的所有条目。语法格式为: 对象.Clear

16 第一节 常用窗体控件 3. 事件 列表框能够响应Click和DblClick事件,但很少用。一般用户通过列表框和组合框选择,完毕单击某按钮时才根据选择结果执行相应操作。 4. 应用实例 设计如图所示的程序。右侧列表框中的条目按照字符顺序升序排列,左侧列表框中的条目按照添加的先后顺序排列。当双击某个条目时,该条目从本列表框中被删除同时添加到另一个列表框中。

17 第一节 常用窗体控件 8.1.2.2 组合框(ComboBox ) ComboBox(组合框)是VB的标准控件,它是文本框和列表框的组合。
第一节 常用窗体控件 组合框(ComboBox ) ComboBox(组合框)是VB的标准控件,它是文本框和列表框的组合。 1.重要属性 1)组合框也具有Text、ListIndex、List、ListCount、Sorted等属性,含义同List控件。但没有MultiSelect、Selected、Selcount属性。

18 第一节 常用窗体控件 2)Style(风格,列表框没有) 该属性用于设置组合框的格式,有3种取值情况: 0-Dropdown下拉式组合框
第一节 常用窗体控件 2)Style(风格,列表框没有) 该属性用于设置组合框的格式,有3种取值情况: 0-Dropdown下拉式组合框 1-Simple Combo简单组合框 2-Dropdown List下拉式列表框 这三种组合框的区别为: ①下拉式组合框和下拉式列表框运行时只显示文本框,如左图所示。而简单组合框同时显示文本框和列表框,大小固定,如中间所示。 ②下拉式组合框和简单组合框允许用户在文本框中输入新的内容,而下拉式列表框不允许。 ③三种组合框都可以响应Click事件,只有简单组合框可以响应DblClick事件。

19 第一节 常用窗体控件 2. 应用实例 编写一个程序实现以下功能:必须从给定的实验类型中选择一个实验种类,从给定实验动物列表中选择可用的动物类型(可以多选),当单击“读取”按钮时将用户的选择结果输出到窗体上,如图所示。

20 第一节 常用窗体控件 8.1.3 滚动条(ScrollBar)
第一节 常用窗体控件 8.1.3 滚动条(ScrollBar) 滚动条分为水平滚动条和垂直滚动条两种,它们都是VB的标准控件。除了方向不同外,水平滚动条和垂直滚动条的结构和操作是一样的。两端各有一个箭头,中间有一个滑块。如图所示。

21 第一节 常用窗体控件 1.重要属性 1) Max 设置当滑块移至水平滚动条最右端,或垂直滚动条最下端时滚动条所能表示的极值 (范围为-32768~32767) 。 2)Min 设置当滑块移至水平滚动条最左端,或垂直滚动条的最上端时滚动条所能表示的极值 (范围为-32768~32767) 。 说明:Max既可以大于Min,也可以小于Min。 3)Value 设置和返回滑块在滚动条上的位置。 注意:不能将Value的值设置在Max和Min范围之外的值。 4)LargeChange 设置单击滚动条上滑块与箭头间位置时,Value增加或减小的值。 5)SmallChange 设置单击滚动条两端的箭头时,Value增加或减小的值。

22 第一节 常用窗体控件 2. 事件 3. 应用实例 1)Scroll 只有当拖动滚动条上的滑块时,才会触发Scroll事件。 2)Change
第一节 常用窗体控件 2. 事件 1)Scroll 只有当拖动滚动条上的滑块时,才会触发Scroll事件。 2)Change 无论什么原因只要改变滚动条的Value值就会触发Change事件。 注意:一般为滚动条编写代码时,这两个事件都要编写。 3. 应用实例 设计如图所示的程序,实现利用滚动条来改变文本框内文字的大小。要求水平滚动条的属性设置如下:Max为60,Min为10,SmallChange为1,LargeChange为5

23 第一节 常用窗体控件 8.1.4 RichTextBox
第一节 常用窗体控件 8.1.4 RichTextBox RichTextBox是比文本框更为高级的文本控件,它可以同时包含多种文字格式、段落格式等设置,甚至插入图形就像Word一样。 RichTextBox控件不是标准控件,使用前需要通过“工程/部件”菜单将“Microsoft Rich TextBox Control 6.0”添加到工具箱中。

24 第一节 常用窗体控件 1. RichTextBox的重要属性列表 分类 属性 值类型 说明 选中文本
第一节 常用窗体控件 1. RichTextBox的重要属性列表 分类 属性 值类型 说明 选中文本 SelText SelStart SelLength 同TextBox控件 字体字号 SelFontName SelFontSize 同上 字 型 SelBold SelItalic SelUnderline SelStrikethru 逻辑型 粗体、斜体、下划线、删除线 上、下标 SelCharOffset 整型 >0上标,<0下标,Twip为单位 颜 色 SelColor 缩 排 SelIndent SelRightIndent SelHangingIndent 段落的左缩进、右缩进、 悬挂式缩进 对齐方式 SelAlignment (指段落) 0左、1右、2居中

25 第一节 常用窗体控件 2. 在RichTextBox中插入图片 对象名.OLEObjects.add [索引],[关键字],文件标识符
第一节 常用窗体控件 2. 在RichTextBox中插入图片 可以将*.bmp图像文件插入RichTextBox控件中,语法如下: 对象名.OLEObjects.add [索引],[关键字],文件标识符 其中:对象名 是RichTextBox控件的名称 OLEObjects 是添加到RichTextBox控件中的对象的集合 索引和关键字 给被添加元素的编号和标识名,可以省略,但是逗号不能省略 文件标识符 是被插入对象的带有完整路径的文件名 例如:将图形文件“C:\Windows\Greenstone.bmp”插入到当前光标位置,方法为: RichTextBox1.OLEObjects.add , ,"C:\Windows\Greenstone.bmp"

26 第一节 常用窗体控件 3. RichTextBox中的文件操作
第一节 常用窗体控件 3. RichTextBox中的文件操作 1)LoadFile方法 将RTF文件(*.rtf)或文本文件(*.txt)装入RichTextBox控件并显示,语法格式为: 对象名.LoadFile 文件标识符[,文件类型] 其中:对象名为某个RichTextBox控件的名称 文件标识符为欲加载文件的文件名(包含完整路径) 文本类型取值为0(或rtfRTF)表示加载RTF文件(缺省);取值1(或rtfTEXT)表示加载文本文件。 2)SaveFile方法 将RichTextBox控件中的内容保存为Rtf文件或文本文件,语法格式为: 对象名.SaveFile 文件标识符[,文件类型] 例如:把RichTextBox1中的内容保存至“D:\mytest\abc.txt”的语句为:RichTextBox1.SaveFile "d:\mytest\abc.txt", rtfTEXT

27 第一节 常用窗体控件 4. 应用实例 设计如图所示的应用程序,初始均为左对齐、宋体、四号。实现以下功能:
第一节 常用窗体控件 4. 应用实例 设计如图所示的应用程序,初始均为左对齐、宋体、四号。实现以下功能: 1)单击“字体格式”时,将选中文本设置为隶书、20号、红色、带下滑线。 2)单击“上标”时,将选中文本设置为字号缩小为原来的一半,字符位置提升150。 3)单击“段落居中”时,将选中段落居中显示。

28 第一节 常用窗体控件 8.1.5 时间日期控件 Visual Basic提供了几种时间日期控件,用来进行秒表计时、日期选择等功能。常见的有Timer控件、DateTimePicker控件等。

29 第一节 常用窗体控件 Timer Timer控件是VB提供的标准控件,它可以实现指定代码的周期性自动运行。该控件在运行时不可见。 1.重要属性 1) Interval属性 设置和返回Timer事件周期性自动运行的时间间隔。单位是毫秒(千分之一秒),取值范围为0~65535。 2)Enabled属性 该属性用于设置Timer控件是否生效。当Enabled=False时,Timer事件不执行

30 第一节 常用窗体控件 2. 事件 3. 应用实例 Timer控件只支持Timer事件。
第一节 常用窗体控件 2. 事件 Timer控件只支持Timer事件。 该事件过程每隔Interval指定的时间间隔自动执行一次,前提是Interval>0和Enabled=True两个条件同时为真。 注意: Timer控件、Timer事件、Timer函数和Time函数的区别。 3. 应用实例 设计如图所示的程序,要求程序运行后单击“开始”按钮,Text1中的字体开始周期性地自动放大;当字号大于100时,开始周期性地缩小;当字号小于10时,开始周期性地放大。单击“停止”按钮,保持当前字号不变

31 第一节 常用窗体控件 8.1.5.2 DateTimePicker
第一节 常用窗体控件 DateTimePicker DateTimePicker控件可以提供如图所示的下拉式日历供用户选择日期,并按指定格式将选择结果显示出来。 DateTimePicker控件不是标准控件,使用前需要通过“工程/部件”菜单将“Microsoft Windows Common Controls-2 6.0”添加到工具箱中。

32 第一节 常用窗体控件 1.重要属性 1) Format 设置控件中日期和时间的显示格式。有四种取值情况:
第一节 常用窗体控件 1.重要属性 1) Format 设置控件中日期和时间的显示格式。有四种取值情况: 0 – dtpLongDate长日期格式显示。 1 – dtpShortDate短日期格式显示。 2– dtpTime时间格式显示。 3 – dtpCustom 使用格式字符串来指定一种自定义格式进行显示。 2) CustomFormat 设置DateTimePicker控件中用户自定义的显示格式。前提是Format属性值必须为dtpCustom。

33 第一节 常用窗体控件 3) Value 4) Day、Month、Year
第一节 常用窗体控件 3) Value 返回或设置控件当前选中的日期 4) Day、Month、Year 返回和设置控件显示日期中的日、月份、年份。当修改某个属性时其它几个属性的值不会跟着变化 5) DayOfWeek 返回或设置当前显示日期为一个星期中的第几天。范围为1~7(星期日为1,星期六为7)。例如DTPicker1中显示的日期为2009年8月14日星期五,语句DTPicker1.DayOfWeek=3可以将显示日期修改为2009年8月11日星期二

34 第一节 常用窗体控件 2. Change事件 只要DateTimePicker控件中显示的日期发生改变就会触发Change事件。
第一节 常用窗体控件 2. Change事件 只要DateTimePicker控件中显示的日期发生改变就会触发Change事件。 在Change事件中,通过Value、Year、Month、Day、DayOfWeek等属性就可以获得用户选定的日期。

35 第二节 对话框设计 8.2 对话框设计

36 Visual Basic中对话框的种类 第二节 对话框设计 1. 预定义对话框 2. 通用对话框 3. 自定义对话框
第二节 对话框设计 Visual Basic中对话框的种类 1. 预定义对话框 VB系统提供的格式固定的对话框,例如InputBox输入框、MsgBox消息框等。 2. 通用对话框 VB提供的集打开、另存为、颜色、字体、打印机、帮助于一体的Windows应用程序标准格式对话框。 3. 自定义对话框 自定义对话框是VB的一个窗体,用户可以按照自己的意愿来设计其格式和功能。

37 第二节 对话框设计 8.2.1 通用对话框 通用对话框集打开、另存为、颜色、字体、打印机、帮助六种基于Windows标准对话框于一体。
第二节 对话框设计 8.2.1 通用对话框 通用对话框集打开、另存为、颜色、字体、打印机、帮助六种基于Windows标准对话框于一体。 CommonDialog控件不是标准控件,使用前需要通过“工程/部件”菜单将“Microsoft Common Dialog Control6.0”添加到工具箱中。 和Timer控件一样,该控件运行时不可见。

38 第二节 对话框设计 1.针对这六种对话框的通用属性和方法 1) Action属性和Show方法
第二节 对话框设计 1.针对这六种对话框的通用属性和方法 1) Action属性和Show方法 通用对话框的显示类型 Action属性值 Show方法 “打开(Open)”文件对话框 ShowOpen “另存为(Save As)”文件对话框 ShowSave “颜色(Color)”对话框 ShowColor “字体(Font)”对话框 ShowFont “打印(Print)”对话框 ShowPrinter “帮助(Help)”对话框 ShowHelp 例如CommonDialog1.ShowOpen和CommonDialog1.Action=1等价 2) CancelError属性 设置当单击“取消”按钮时是否产生错误信息。 当CancelError=True时,单击“取消”系统出现Err.Number为32755的错误

39 第二节 对话框设计 2. “打开(Open)”对话框
第二节 对话框设计 2. “打开(Open)”对话框 “打开”对话框提供了可以遍历每个驱动器、文件夹和文件的功能,如图所示,并可以返回用户的选择结果。 Filter FileName InitDir FilterIndex

40 第二节 对话框设计 1. “打开”对话框的重要属性 1) FileName 返回或设置“打开”对话框中选定的文件名(包含完整路径)。
第二节 对话框设计 1. “打开”对话框的重要属性 1) FileName 返回或设置“打开”对话框中选定的文件名(包含完整路径)。 2) FileTitle 返回“打开”对话框中选定的文件名(不包含路径) 。 3) Filter 设置“打开”对话框中“文件类型”处提供的文件类型过滤器。每个过滤器由两部分组成,用“|”分隔。例如: CommonDialog1.Filter="可执行文件|*.exe" 允许同时显示多种文件类型的过滤器写法: CommonDialog1.Filter = "图片文件|*.jpg;*.bmp;*.gif;*.ico" 多个过滤器的书写方法: CommonDialog1.Filter="文本文件|*.txt|所有文件|*.*" 4)FilterIndex 设置多个过滤器中,(程序刚运行时)哪个过滤器生效。 注意FilterIndex=0和1都是第一个,第二个过滤器值为2,……。 5)InitDir属性 该属性用于设置“打开”对话框的初始目录。

41 第二节 对话框设计 3. “另存为(Save as)”对话框
第二节 对话框设计 3. “另存为(Save as)”对话框 “另存为”对话框和“打开”对话框相似,提供了可以遍历每个驱动器、文件夹和文件的功能,用户可以在“文件名”处输入新的文件名,如图所示,并可以返回用户的操作结果。用法同“打开”对话框。

42 第二节 对话框设计 4. “颜色”对话框 “颜色”对话框提供了让用户通过鼠标点击就可以选择相应颜色的功能,如图所示,并返回用户的选择结果。
第二节 对话框设计 4. “颜色”对话框 “颜色”对话框提供了让用户通过鼠标点击就可以选择相应颜色的功能,如图所示,并返回用户的选择结果。 Color属性是“颜色”对话框的一个重要属性,通过该属性可以设置和返回对话框中选定的颜色。

43 注意:Flags属性:指示所显示的字体类型,必须设置。
5. “字体”对话框 FontName FontBold、FontItalic FontSize FontStrikethru FontUnderline Color Min、Max 注意:Flags属性:指示所显示的字体类型,必须设置。 cdlCFScreenFonts &H1 屏幕字体 cdlCFPrinterFonts &H2 打印机字体 cdlCFBoth &H3 打印机字体和屏幕字体。 cdlCFEffects &H100 显示删除线和下划线检查框以及颜色组合框(不能单独使用)

44 第二节 对话框设计 6. “打印”对话框 通过“打印”对话框,用户可以选择打印机、打印范围和份数。 重要属性有: 1)Max属性、Min属性
第二节 对话框设计 6. “打印”对话框 通过“打印”对话框,用户可以选择打印机、打印范围和份数。 重要属性有: 1)Max属性、Min属性 在“打印”对话框打开之前设置,用于限定用户可以指定的页面范围,一般Min=1、Max=文章总页数。 2)FromPage属性、ToPage属性 设置和返回打印的起始页码和终止页码。 3)Copies属性 返回用户指定的打印份数。

45 第二节 对话框设计 7. 通用对话框应用实例 设计如图所示的应用程序。单击“打开”可以通过“打开”文件对话框选择一个文本文件,并将文件内容显示在文本框Text1中。单击“背景色”可以通过“颜色”对话框选择一个颜色,并将该颜色应用于文本框背景。单击“字体”可以通过“字体”对话框设置字体格式,并将结果应用于文本框中。单击“打印”可以通过“打印”对话框指定打印机和打印份数,并将文本框内容通过打印机输出。单击“保存”可以通过“另存为”对话框将修改后的文本框内容保存到文件“d:\EnglishTest.txt”中。

46 第三节 菜单设计 8.3 菜单设计

47 第三节 菜单设计 下拉式菜单系统的组成结构 :

48 第三节 菜单设计 菜单编辑器的使用 常用属性: 必须在对象窗口为活跃窗口的情况下才可以调用菜单编辑器,具体方法有:
第三节 菜单设计 菜单编辑器的使用 必须在对象窗口为活跃窗口的情况下才可以调用菜单编辑器,具体方法有: 1) 执行“工具”菜单里的“菜单编辑器”命令 2) 单击工具栏中的“菜单编辑器”按钮 3) 在对象窗口空白处右击,弹出的快捷菜单中选择“菜单编辑器”命令 4) 通过快捷菜单“Ctrl+E” 菜单列表框 菜单项属性 操作按钮 常用属性: 1. 标题(Caption) 热键:前面加& 2. 名称(Name)文本框 分隔符也应有名称。 3. 快捷键(Shortcut) 菜单名没有快捷键 4. 复选(Checked)检查框 TRUE 有 5. 有效(Enabled)检查框 6. 可见(Visible)检查框

49 第三节 菜单设计 应用实例:建立一个有菜单功能的文本编辑器。要求有三级菜单、热键、快捷键、并能够进行对齐格式的变化

50 第三节 菜单设计 弹出式菜单(快捷菜单)设计
第三节 菜单设计 弹出式菜单(快捷菜单)设计 弹出菜单是独立于窗体菜单栏而显示在窗体内的浮动菜单。显示位置取决于单击鼠标键时指针的位置。设计与普通菜单相同(如果不希望菜单出现在窗口的顶部,可将该菜单Visible属性设为False)。菜单弹出的方法: [对象.]PopupMenu 菜单名, 标志, x, y 标志,表示弹出的位置和触发的键(见教材P222 表8-6) Sub picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu EditMenu, vbPopupMenuCenterAlign End Sub

51 第四节 工具栏设计 8.4 工具栏设计

52 第四节 工具栏设计 工具栏控件不是标准控件,使用前需通过“工程/部件”菜单将“Microsoft Windows Common Controls 6.0”添加到工具箱中(九个Windows风格常用控件),其中ToolBar和ImageList就是所需的。 工具栏中的图像引自ImageList控件,开始设计工具栏之前必须将所需的图像全部在ImageList中添加好,一旦开始设计就不能再增删ImageList中的图库了。

53 第四节 工具栏设计 1. 向ImageList控件中添加图像 在ImageList控件的“属性页”窗口中, “图像”选项卡下:
第四节 工具栏设计 1. 向ImageList控件中添加图像 在ImageList控件的“属性页”窗口中, “图像”选项卡下: “插入图片”可以添加扩展名为.bmp、.ico、.gif、.jpg的新图像。 “删除图片”按钮可以删除选中的图像。 “索引”为每个图像的唯一编号,第一个图像编号为1。 “关键字”为每个图像的唯一标识名。 “图像数”为已添加图像的个数。 图中所示的所有图像均由VB系统提供,路径为VB安装目录(…)下的 “…\Microsoft Visual Studio\ COMMON\Graphics\Bitmaps\TlBr_W95\”

54 第四节 工具栏设计 2. 在ToolBar控件中添加按钮 工具栏中按钮的六种样式 值 常数 按钮类型 说明 tbrDefault 标准按钮
第四节 工具栏设计 2. 在ToolBar控件中添加按钮 工具栏中按钮的六种样式 常数 按钮类型 说明 tbrDefault 标准按钮 单击后恢复原态,如“新建”按钮 1 tbrCheck 开关按钮 单击保持按下状态,再击恢复原态,如“加粗”按钮 2 tbrButtonGroup 编组按钮 一组按钮中只能有一个生效,如“左对齐”按钮 3 tbrSepatator 分隔按钮 产生具有8个像素宽度的分隔符 4 tbrPlaceholder 占位按钮 产生宽度可调的分隔符,以便放置“字号”组合框等控件 5 tbrDropdown 菜单按钮 产生下拉菜单按钮对象,如VB标准工具栏中的“添加新窗体”按钮

55 第四节 工具栏设计 3. 为ToolBar控件中的按钮编写代码 一个工具栏中所有的按钮对象对应同一个ButtonClick事件。
第四节 工具栏设计 3. 为ToolBar控件中的按钮编写代码 一个工具栏中所有的按钮对象对应同一个ButtonClick事件。 通常采用Select Case结构,通过每个按钮关键字和索引的不同来编写对应的代码。例如: 方法一:通过关键字来区分 Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key Case “cut” Case “copy” End Select End Sub 方法二:通过索引来区分(第一个按钮的索引为1, 占位按钮也有索引) Private Sub Toolbar1_ButtonClick(…) Select Case Button.Index Case 1 ... Case 2 End Select End Sub

56 第五节 多窗体操作 8.5 多窗体操作

57 第五节 多窗体操作 1.多窗体的添加 “工程|添加窗体” 2.多窗体的保存 新建 现存 防止出现窗体的重名错误;
第五节 多窗体操作 1.多窗体的添加 “工程|添加窗体” 新建 现存 添加“现存”窗体时要注意: 防止出现窗体的重名错误; 添加的窗体实际是将其它工程中已有的窗体加入,多个工程共享窗体,在一个工程中的修改将影响另一个窗体; 通过“另存为”命令以不同的窗体文件名保存,断开共享。 2.多窗体的保存 一个工程中有多个窗体,应分别取不同文件名保存在磁盘上,VBP工程文件中记录了该工程的所有窗体文件名。

58 第五节 多窗体操作 3. 设置启动窗体 4. 窗体语句 “工程/属性” “启动对象” 设置启动对象
第五节 多窗体操作 3. 设置启动窗体 “工程/属性” “启动对象” 设置启动对象 4. 窗体语句 (1)Load语句:装入窗体到内存但没有显示窗体 形式: Load 窗体名称 (2)Unload语句:从内存删除窗体 形式: Unload 窗体名称

59 第五节 多窗体操作 6.不同窗体间数据的存取 5. 窗体方法 (1)Show方法:显示一个窗体(当窗体没有Load,自动Load)
第五节 多窗体操作 5. 窗体方法 (1)Show方法:显示一个窗体(当窗体没有Load,自动Load) [窗体名称].Show [模式] 0 - vbModeless ,可以随时对其它窗体进行操作。 1 - vbModal ,关闭后才能对其它窗体进行操作。 (2) Hide方法:隐藏窗体,并不从内存中删除 [窗体名称.] Hide 6.不同窗体间数据的存取 (1)存取控件的属性 另一窗体名.控件名.属性 (2)存取变量的值 另一窗体名.全局变量名

60 第五节 多窗体操作 应用实例

61 End of the chapter 沈阳药科大学计算机教研室


Download ppt "第八章 界面设计 全 国 高 等 医 药 院 校 药 学 类 规 划 教 材 计算机程序设计(第二版)"

Similar presentations


Ads by Google