Visual Basic 语 言 程 序 设 计第 16章 常用 ActiveX控件
应用 VB6.0专业版和企业版除了提供前面所介绍的常用控件之外,还提供了许多 ActiveX控件。这些控件都极大地增强了 VB程序的功能,同时也简化了复杂应用程序的开发难度。
ActiveX控件既保留了普通控件中的一些基本属性、事件和方法,同时又新增了自身所特有的一些属性和方法。 ActiveX控件是以文件形式存在的,
其扩展名为,ocx,一般保存在 Windows的 System目录或 System32目录中。
ActiveX控件既可以在 VB里得到,也可以从其他软件开发商处获得,同时用户还可以自己利用 VB去定义 ActiveX控件。
ActiveX控件的使用方法和 VB的基本控件完全相同。在使用前,必须先将他们添加到工具箱中,具体操作步骤如下:
Visual Basic 语 言 程 序 设 计操作步骤,
(1)选择,工程,菜单下的,部件,子菜单,或在工具箱上单击鼠标右键,
屏幕出现快捷菜单,如图 16.1所示。
(2)选择,部件,命令,屏幕显示,部件,对话框,在,部件,对话框中,单击,控件,选项卡,如图 16.2所示,对话框中列出了 VB所提供的各种 ActiveX控件。
(3)用鼠标选中所需部件前方的复选框。例如,选中,Microsoft Data DataGrid Control6.0”。
(4)单击,确定,按钮,关闭,部件,对话框。这时所选中的 ActiveX控件图标,就会出现在工具箱中,则我们所选中的 ActiveX控件就可以在程序中使用了。
在前面的章节中,我们已介绍了一些 ActiveX控件:通用对话框、图像列表框、工具栏、状态栏、高级文本框控件,ADO控件、表格控件等。本章介绍一些常用 ActiveX控件,例如:滑块控件、日历控件、动画控件、进程条控件、浏览器控件、会话控件等 6种控件。
Visual Basic 语 言 程 序 设 计
16.1 滑块控件
滑块控件 (Slider)是由一个滑块和一个带有刻度的标尺组成的,用户既可以用鼠标拖动滑块,也可以通过按,方向键,
或,PageUp”和,PageDown”键来移动滑块,此外单击滑块的任意一侧也可以移动滑块。标尺上的刻度反映了滑块的可移动范围和当前位置。当滑块移动时,系统会自动显示滑块的当前值,滑块既可以水平设置,也可以垂直设置。
在,部件,对话框中,选择,Microsoft Windows Common
Control6.0”选项,可以将滑块控件添加到工具箱中。其图标如图 16.3所示。
Visual Basic 语 言 程 序 设 计
16.1.1 滑块控件的常用属性
(1)BorderStyle属性
该属性设置或返回该控件的边界样式。 0为无单线边框; 1为有单线边框。
(2)Max属性和 Min属性
该属性设置或返回该控件的最大值和最小值。
(3)Orientation属性
该属性决定了该控件是水平添加还是垂直添加,0为水平,1为垂直。
(4)TickFrequency属性
该属性返回或设置该控件刻度标记的频率,此频率与其范围有关。
例如,如果范围为 100,而 TickFrequency 属性设置为 2,则在范围中每隔两个增量设置一个刻度。
Visual Basic 语 言 程 序 设 计
16.1.1 滑块控件的常用属性
(5)TickStyle属性
该属性返回或设置该控件上显示的刻度标记的样式。
(6)SmallChange和 LargeChange属性
该属性决定用户操作滑块控件时滑块移动的刻度数量。
SmallChange属性表示用户按下左、右光标键时滑块移动了多少个刻度,默认为 1。 LargeChange属性表示用户按下 〈 PageUp〉 键 〈 PageDown〉 键,或用鼠标单击滑块两侧时,滑块移动了多少个刻度,默认为 5。
(7)SelectRange属性,SelStart属性和 SelLength属性
SelectRange属性决定滑块能否有一个可选择的范围,默认为 False。
SelStart属性决定选择范围的起始数值。
SelLength属性设定滑块选择范围的长度。
只有 SelectRange属性为 True时,才可以通过 SelStart属性和 SelLength属性在滑块中选择范围。
Visual Basic 语 言 程 序 设 计
16.1.1 滑块控件的常用属性
(8)TextPosition属性
该属性返回或设置一个值,用来确定显示文本相对于对象的位置。
0表示在滑块的正上方或左边显示滑块当前值。
1表示在滑块的正下方或右边。
(9)Value属性
该属性设置或返回滑块的当前值。
(10)ToolTipText属性
该属性设置和返回鼠标在控件上暂停时显示的提示文本。
Visual Basic 语 言 程 序 设 计
16.1.2 滑块控件的常用事件
滑块控件常用事件有 Click事件,Change和
Scroll事件。
Click事件是鼠标单击事件。
Scroll事件是在拖动滑块使其滚动时发生的,且
Scroll事件发生在 Click 事件之前。
Chang事件是在滑块位置改变时触发的。
Visual Basic 语 言 程 序 设 计
16.1.3 滑块控件的常用方法
滑块控件常用方法有 ClearSel和 GetNumTicks。
(1)ClearSel方法清除滑块控件的当前选择,此方法将 SelStart 属性设置为 Value 属性值,
并将 SelLength 属性设置为 0。
(2)GetNumTicks方法设置 Slider控件的 Min和 Max
属性之间的刻度数目。
【 例 16.1】 编写一个利用滑块控件来调节图像大小的程序。
Visual Basic 语 言 程 序 设 计
16.2 日历控件
日历控件 (Calendar)用于显示万年历。
16.2.1 日历控件的常用属性 (1)Day属性
该属性返回或设置日期。
(2)Month属性
该属性返回或设置月份。
(3)Year属性
该属性返回或设置年份。
Visual Basic 语 言 程 序 设 计
16.2.2 日历控件的常用方法
(1)PreviousMonth方法
该方法设置日期为上一个月份。
(2)NextMonth方法
该方法设置日期为下一个月份。
(3)PreviousYear方法
该方法设置日期为上一年。
(4)NextYear方法
该方法设置日期为下一年。
(5)Today方法
该方法设置日期为当日。
Calendar控件是一个 ActiveX控件,在,部件,对话框中,选择,Microsoft
Calendar Control8.0”选项,即可将日历控件添加到工具箱中。
【 例 16.2】 用日历控件设计一个万年历程序。
Visual Basic 语 言 程 序 设 计
16.3 动画控件
动画控件 (Animation)是用来显示动画效果的。该控件只能播放无声的,Avi文件,且该控件只能显示未压缩的,Avi 文件。在 Windows98 中,文件复制进度栏就是使用动画控件调用,Avi文件的一个实例。如图 16.8所示,复制文件时我们可以看到该控件的下述效果:即在两个文件夹之间有一张纸
(“文件,)在,飘动,。
说明:在 VB 6.0安装光盘的 \ Graphics\ AVI 目录中我们可以找到许多无声的,Avi 文件。在,部件,对话框中,选择的,Microsoft Windows Common Controls- 2 5.0”选项,
即可把动画控件添加到工具箱上。其图标如图 16.9所示。
Visual Basic 语 言 程 序 设 计
16.3.1 动画控件的常用属性
(1)AutoPlay属性
在将,Avi 文件加载到控件时,返回或设置一值,该值确定动画控件是否开始播放,Avi 文件。另外用
AutoPlay属性播放的,Avi文件将不断重复,直到
AutoPlay 的设置为 False 时为止。
(2)BackStyle属性
该属性返回或设置一个值,该值确定动画控件是在透明的背景上还是在动画剪辑中所指定的背景颜色上绘制动画。在运行时为只读。
0(缺省 )表示透明的,控件的背景颜色是可见的。
1表示不透明的,动画剪辑中指定的背景颜色将充满控件并覆盖其背后的所有颜色。
Visual Basic 语 言 程 序 设 计
16.3.1 动画控件的常用属性
(3)Center属性
在动画控件内确定,Avi文件是否居中。当设置为 True(缺省 )时,根据图象的大小,在控件中心显示,Avi 文件。当设置为 False时,.Avi 文件定位在控件内的 0,0处。
(4)Visible属性
返回或设置控件对象为可见或隐藏的值。
(5)ToolTipText属性
返回或设置一个工具提示。
(6)Enabled属性
返回或设置一个值,该值用来确定控件是否能够对用户产生的事件作出反应。
(7)BackColor属性
该属性返回或设置对象的背景颜色。
(8)ForeColor属性
该属性返回或设置在对象里显示图片和文本的前景颜色。
Visual Basic 语 言 程 序 设 计
16.3.2 动画控件的常用方法
(1)Close方法
该方法使动画控件关闭当前打开的,Avi文件。如果没有加载任何文件,则
Close不执行任何操作,也不会产生任何错误。
(2)Open方法
打开一个要播放的,Avi文件。如果 AutoPlay属性设置为 True,则只要加载该文件,剪辑就开始播放它。在关闭,Avi文件或设置 AutoPlay属性为 False之前,它将不断重复播放。
(3)Play方法
该方法在动画控件中播放,Avi 文件。
(4)Stop方法
该方法在动画控件中终止播放,Avi 文件。 Stop 方法仅终止那些用 Play
方法启动的动画。当设置 AutoPlay 属性为 True 时,任何使用 Stop 方法的尝试都导致返回错误。
【 例 16.3】 利用动画控件编写演示动画控件的程序。
Visual Basic 语 言 程 序 设 计
16.4 进程条控件
在安装 Windows应用程序过程中,我们经常会看见用来反映安装进度的进程条。在 VB6.0中我们也可以借助进程条控件 (ProgressBar)来实现这一功能。
在,部件,对话框中,选择,Microsoft
Windows Common Control6.0”选项,将进程条控件添加到工具箱中,如图 16.12所示。
Visual Basic 语 言 程 序 设 计
16.4.1 进程条控件的常用属性
(1)Orientation属性
该属性返回或设置,进程条,的添加状态。
设置 0为水平方向,为缺省值。
设置 1为垂直方向。
(2)Value属性
该属性返回或设置进程条的当前进度数。它决定了进程条中填充区域的大小。
(3)Visible属性决定进程条是否可见。
一般操作结束后进程条就应该消失。此时其值为 False。
Visual Basic 语 言 程 序 设 计
16.4.1 进程条控件的常用属性
(4)Max,Min 属性
该属性返回或设置进程条控件的最大值和最小值。
(5)Scrolling属性
该属性返回或设置一个值,它决定了进度显示方式是连续的还是分段的。
设置 0为标准分段的。
设置 1为连续的。
(6)BorderStyle属性
设置或返回边界的样子。
Visual Basic 语 言 程 序 设 计
16.4.2 进程条控件的常用事件
进程条控件一般是作为辅助性进度显示来使用的。因此在使用它时,我们一般不对其进行,事件,处理,不过普通的事件有 Click、
MouseDown和 MouseMove等,其功能和用法与普通,按钮控件,一样。
【 例 16.4】 编写一个利用进程条控件和动画控件来显示文件下载的进程。
Visual Basic 语 言 程 序 设 计
16.5 浏览器控件
在浏览 Web页时,我们对 IE浏览器窗口及功能是非常熟悉的。事实上利用 VB中的浏览器控件 (WebBrowser),我们也可以开发制作浏览器程序。因为浏览器控件就是调用了一个名为,shdocvm,dll”的动态链接库,从而实现了
Internet Explorer的所有功能。也就是说浏览器控件就是,Internet Explorer”的窗口,其一切方法和属性都已经封装好了,程序开发人员只需要使用少量的代码就可以制作出优秀的网络浏览程序。另外在用,浏览器,控件制作浏览器程序时,必须配合使用 ToolBar控件和 ImageList
控件。
在,部件,对话框中,选择,Microsoft Internet
Control”选项,即可以将浏览器控件 (WebBrowser)添加到工具箱中。
Visual Basic 语 言 程 序 设 计
16.5.1 浏览器控件的常用属性
(1)AddressBar属性
该属性返回或设置一个可以用来确定地址栏是否显示的值。
(2)FullScreen属性
该属性返回或设置一个值来标识浏览器窗口是否已经最大化。
(3)LocationURL属性
该属性返回一个字符串,且该字符串包含有浏览器目前正在显示的
URL资源地址或文件夹及文件的完全路径。
(4)LocationName属性
该属性返回一个字符串,且该字符串包含有浏览器目前正在显示的
URL资源名称或文件夹及文件的完全路径。
Visual Basic 语 言 程 序 设 计
16.5.1 浏览器控件的常用属性
(5)StatusBar属性
该属性返回或设置一个可以用来确定状态栏是否显示的值。
(6)ReSizable属性
该属性设置一个值来表示控件对象是否可以调整大小。
(7)Visible属性
该属性返回或设置一个值来表示控件对象是否可见。
Visual Basic 语 言 程 序 设 计
16.5.2 浏览器控件的常用方法
(1)GoBack方法
回退到浏览器所浏览过的 Web地址历史记录表中的某一项。
(2)GoForward方法
前进到浏览器所浏览过的 Web地址历史记录表中的某一项。
(3)GoHome方法
返回到在浏览器属性对话框中所选定的,主页,位置。
(4)Quit方法
关闭浏览器应用程序。
(5)Refresh方法
更新浏览器目前所显示页面的内容。
(6)Stop方法
取消还未发生的浏览和下载操作。停止如动态页面成分、背景音乐和动画的下传。
(7)Navigate方法
浏览由 URL确定的资源或由完整路径指明的文件。
【 例 16.5】 编写一个浏览器程序。
Visual Basic 语 言 程 序 设 计
16.6 多选项卡控件
多选项卡控件 (SSTab)能为程序制成多个选项卡。在 SSTab控件中,所有的选项卡都能够作为其他控件的容器,但是一次只能有一个选项卡被激活 (处于活动状态 ),当某个选项卡被激活后,其内容被显示,而其余的选项被隐藏起来。
在,部件,对话框中,选择的,Microsoft
Tabbed Dialog Control 6.0”选项,即可把
SSTab控件添加到工具箱上。
Visual Basic 语 言 程 序 设 计
16.6.1 多选项卡控件的常用属性? (1)Style属性
该属性决定 SSTab控件上的选项卡的样式。
0—asStyleTabbedDialong(默认的 ):活动选项卡的字体是粗体的。
1—asStylePropertyPage:每个选项卡的宽度都调整到其标题中文本的长度。活动选项卡的字体不是粗体的。
(2)Tabs属性
该属决定 SSTab控件上的选项卡总数。在运行时可以更改 Tabs属性,从而添加新的选项卡或删除选项卡。在设计时,用 Tabs属性连同 TabsPerRow
属性,来决定控件显示的选项卡总行数。但是,在运行时,要使用 Rows
属性才能获得选项卡的行数。
(3)TabsPerRow和 Rows属性
TabsPerRow属性决定 SSTab控件中每一行选项卡的数目。 Rows属性决定
SSTab控件中的选项卡总行数。在设计时,由 Tabs和 TabsPerRow属性决定
SSTab控件中的选项卡总行数。在运行时,要使用 Rows属性才能获得选项卡的行数。
Visual Basic 语 言 程 序 设 计
16.6.1 多选项卡控件的常用属性
(4)TabOrientation属性
该属性决定 SSTab控件上的选项卡的位置。选项卡可以出现在控件的顶端、底部、左边或右边。
(5)ShowFocusRect属性
该属性用于返回或设置一个值,当 SSTab控件上的选项卡获得焦点时,
由这个值可确定在该选项卡上的焦点矩形是否可视。
True(默认 ):在有焦点的选项卡上,控件显示焦点矩形。
False:在有焦点的选项卡上,控件不显示焦点矩形。
(6)Tab属性
该属性决定 SSTab控件上当前选项卡。如果 Tab属性值设置为 0,则第一选项卡为当前活动的选项卡。如果 Tab属性值设置为 1,则第二选项卡为当前活动的选项卡。
Visual Basic 语 言 程 序 设 计
16.6.2 多选项卡控件的常用事件? SSTab控件能响应 Click和 DblClick事件。 DblClick事件与其他事件一样,Click事件是在用户选定一个选项卡时发生的事件,其过程有一个特殊的参数,PreviousTab,它标识先前为活动的选项。
使用 SSTab控件的操作步骤如下:
(1)打开 SSTab控件的,属性页,对话框,选择,通用,选项卡,
如图 16.18所示。
(2)可以进行如下设置:
·在,选项卡数,框中,设置选项卡数;
·在,选项卡标题,框中,为每个选项卡输入标题。如果输入或修改另一个选项卡的标题,则应单击,<”按钮或,>”按钮;
·在,当前选项卡,框中,设置选项卡的编号,选项卡的编号是从 0开始的,Tab属性的值是当前选项卡的编号。
·在,选项卡高度,框中,设置选项卡的高度。
Visual Basic 语 言 程 序 设 计
16.6.2 多选项卡控件的常用事件
(3)在选项卡中添加控件。
(4)编写 SSTab控件的事件过程。
【 例 16.6】 利用 SSTab控件,设计一个有三个选项卡程序。
Visual Basic 语 言 程 序 设 计
16.7 综合应用
本节介绍状态栏和形状控件、多媒体控件、
滑块控件和通用对话框等综合应用的实例。
16.7.1 状态栏控件和形状控件
【 例 16.7】 利用状态栏控件和形状控件编写一个信号灯显示的程序。
16.7.2 多媒体控件和滑块控件
【 例 16.8】 利用多媒体控件、滑块控件和通用对话框,编写一个 Midi播放器的程序。