关于ActiveX的教程[vb](转帖)

来源:互联网 发布:淘宝销量最好的店铺 编辑:程序博客网 时间:2024/06/05 15:21

关于ActiveX的教程
Visual Basic是面向对象的程序设计语言,微软公司推出了ActiveX技术,利用ActiveX技术提出的标准,对界面的设计进行了封装,形成了一系列编程控件,即特定功能的程序模块。在程序的设计中,设计人员只需要拖动所需控件到窗体,然后对控件进行属性设置和使用其方法、事件即可,大大减轻了繁琐的程序设计。
第一节 认识并装载ActiveX控件
任务1:ActiveX控件的概念和ActiveX控件的装载方法
【任务的提出】Visual Basic工具箱上的标准控件只有21个。对于复杂的应用程序,仅仅使用一些标准控件是不够的,可以应用Visual Basic以及第三方开发商提供的大量AcitveX控件。这些控件可以添加在工具箱上。目前在Internet上大约有1000多种AcitveX控件可供下载,大大节约了我们的开发时间。
本任务主要包括以下内容:
(1) 控件分类及ActiveX的概念。
(2) 装载ActiveX控件。
11.1.1  控件分类及ActiveX的概念
Visual Basic 6.0中控件主要分为三种:内部控件(标准控件)、ActiveX控件(外部控件)和可插入对象。
1.内部控件(也称标准控件)
就是我们通常使用的如标签、文本框、命令按钮等常用控件,在我们运行Visual Basic 6.0环境时,可自动在工具箱中出现。如图11-1所示。

图11-1 工具箱中的内部控件
2.ActiveX控件
(1)ActiveX部件
VB功能之所以强大,很大程度上是借助于ActiveX部件。所谓ActiveX部件是指一件可招待的代码,如一个.exe 、.dll或 .ocx文件,它们在提供对象时遵循ActiveX的规范。在VB中,具有四种类型的ActiveX部件:ActiveX 控件、ActiveX.EXE、ActiveX.DLL 、ActiveX 文档。ActiveX.EXE部件是不可视的代码部件,能够服务于多个应用程序,并且能够在远程计算机上运行,能安装在服务器端;ActiveX.DLL 部件是不可视的代码部件,能够与应用程序运行在同一个进程中,能安装在客户端;ActiveX 控件是一个可视的部件,能够作为控件被拖放到不同的应用程序中;ActiveX 文档也是一个可视的部件,能够通过Internet上的Web浏览器打开。
(2)ActiveX控件
ActiveX控件称为扩充控件。ActiveX控件是一种具有可视设计外观,并且能够作为可插件引入到应用程序中去的ActiveX部件,如ADO Data控件就是其中之一。“ActiveX控件”是一种扩展名为 .OCX的独立文件,通常存放在Windows的System目录中。
大部分应用程序可以用内部控件来设计,但是有些功能,如:多媒体、动画、计算机通讯等无法用内部控件来设计,只能通过ActiveX控件来实现。
3.可插入对象
可插入对象为Windows应用程序对象。为了在程序设计中能访问和使用Excel 、Word的文件信息,VB提供了一种控件,帮助我们把Microsoft Excel Sheet、Microsoft Word及位图文件等信息插入应用程序中,这就是可插入对象。
11.1.2  装载ActiveX控件
一般情况下,工具箱中只有内部控件。为了把所需要的ActiveX控件加到工具箱,可执行“工程”菜单中的“部件”命令,显示图10-2所示的部件对话框,从中选择并添加即可。
   
图11-2 装载ActiveX控件                  图11-3 添加外部控件
如果在列表框未找到想要的控件,或要添加外部控件(其他用户自己设计的ActiveX控件),单击“浏览(B)…”按钮,找到要添加的ActiveX控件的.ocx文件,打开并添加进来即可,如图11-3所示。
【新的任务】
通过本任务的学习,了解了控件分类及ActiveX控件的基本概念和添加方法。现在新的任务是:把常用ActiveX控件添加到工具箱中并查看它们的基本属性及方法。
第二节  常用ActiveX控件
任务2:常用ActiveX控件浏览
【任务的提出】VB中有许多非常有用的ActiveX控件,我们不可能面面俱到,但对常用的ActiveX控件还是要做必要的了解。本任务主要包括以下内容:
(1) 熟悉常用ActiveX控件的属性。
(2) 熟悉常用ActiveX控件的方法。
(3) 熟悉常用ActiveX控件的事件。
VB有许多控件,为了让大家熟悉VB中的常用ActiveX控件,我们先列出常用ActiveX控件的类名及所需文件,如表11-1所示。
表11-1  常用ActiveX控件的类名及所需文件
控件名称 类名 所需文件
3D Check Box SSCheck TREED32.OCX
3D Command Button SSCommand TREED32.OCX
3D Frame SSFrame TREED32.OCX
3D Group Push Button SSRibbon TREED32.OCX
3D Option Button SSOption TREED32.OCX
3D Panel SSPanel TREED32.OCX
Animated Button AniPushButton ANIBIN32.OCX
Communications MSComm MSCOMM32.OCX
Gauge Gauge GAUGE32.OCX
Graph Graph GRAPH32.OCX GSW32.EXE
GSWDLL.DLL
Grid Grid GRID32.OCX
ImageCombo ImageCombo MSCOMCTL.OCX
ImageList ImageList MSCOMCTL.OCX
KeyState MhState KEYSTA32.OCX
ListView ListView MSCOMCTL.OCX
MAPI MapiSession
MapiMessages MSMAPI32.OCX
MaskedEdit MaskEdBox MSMASK32.OCX
Multimedia MCI MMControl MCI32.OCX
OutLine OutLine MSOUTL32.OCX
Picture Clip PictureClip PICCLP32.OCX
ProgressBar ProgressBar MSCOMCTL.OCX
RichTextBox RichTextBox RICHTX32.OCX
Slider Slider MSCOMCTL.OCX
SpinButton SpinButton SPIN32.OCX
SSTab SSTab TABCTL32.OCX
StatusBar StatusBar MSCOMCTL.OCX
TabStrip TabStrip MSCOMCTL.OCX
ToolBar ToolBar MSCOMCTL.OCX
TreeView TreeView MSCOMCTL.OCX
下面我们再看看常用的ActiveX控件,如表11-2所示。
表11-2  常用ActiveX控件一览表
图标 控件名称 功能

Animation 实现动画播放

MediaPlayer 实现电影等媒体播放

Winsock 支持TCP/IP协议,实现网络通讯

MSComm 为应用程序提供串口通讯功能

MMControl 管理多媒体接口(MCI)设备和多媒体文件的记录和播放

WebBrowser 实现WWW浏览功能

Calendar 实现日历显示设置功能

ProgressBar 进度控制显示功能
认识了常用ActiveX控件,下面介绍它们的常用属性、方法和事件。
11.2.1 Animation控件
     Animation控件如图11-4所示,为avi无声动画播放控件,可实现avi动画的播放功能。
图11-4  Animation控件
 属性
Center:决定动画是否在控件的中央播放,取逻辑值。True——在中央播放;False——不在中央播放。
AutoPlay属性:决定在用Open方法打开文件时是否自动播放,取逻辑值。True——自动播放;False——不自动播放。
 方法
Open:打开文件;打开指定的要播放的.avi文件。如Animation1.Open(“c:/Clock.avi”)。
Play:  播放动画;启动动画播放功能。
Stop: 停止播放;停止动画播放功能。
Close:关闭文件被播放的文件。
11.2.2  MediaPlayer控件
MediaPlayer控件可实现各种多媒体信息的播放,如图10-5所示。

图11-5  MediaPlayer控件
 属性
Filename:被播放的文件路径及文件名。
AutoStart:决定在用Open方法打开文件时是否自动播放,取逻辑值。True——自动播放;False——不自动播放。
 方法
Open:打开文件。打开指定的要播放的.avi文件。如Animation1.Open(“c:/Clock.avi”)。
Play:播放动画。启动动画播放功能。
Stop:停止播放。停止动画播放功能。
Pause:暂停播放的文件。
11.2.3  Winsock控件
Winsock控件是经常使用的网络通信控件,如图11-6所示。它支持TCP/IP协议,实现计算机间的数据通信,提供了两种网络服务方式——Tcp方式、Udp方式。

图11-6 Winsock控件
 属性
BytesReceived:返回接收到的数据的数量,其返回值为Long型。接收到的数据可用GetData方法来获取。
LocalHostName:返回本地机器名。此属性只能在运行时有效。
LocalIP:返回本地机器的IP地址,其格式为:XXX.XXX.XXX..XXX形式。
LocalPort:返回或者设置所用到的本地端口。该属性可读写。
Protocol:返回或设置Winsock控件所使用的协议,可以是0—Tcp或1—Udp。
RemoteHost:返回或设置远程计算机,控制数据的收发方向。
SocketHandle:返回一个与套接字句柄对应的值,控件用套接字句柄与Winsock通信。只读。
State:返回控件的状态,用枚举型表示,State的取值如表11-3所示。
表11-3  State属性取值
常量 值 说明
sckClosed 0 关闭(缺省)
sckOpen 1 打开
sckListening 2 侦听
sckConnectingPending 3 连接挂起
sckResolvingHost 4 识别主机
sckHostResolved 5 已识别主机
sckConnecting 6 正在连接
sckConnected 7 已连接
sckClosing 8 同级人员正在关闭连接
sckError 9 错误
 方法
Accept:在处理ConnectionRequest事件时用此方法接受新连接。此方法只适合TCP服务器应用程序。
Bind:指定用于TCP连接的LocalPort和LocalIP。
Close:关闭客户机和服务器应用程序的TCP连接或侦听套接字。
GetData:获得当前的数据块并存储在变体类型的变量中。
格式为:.GetData data ,[type][maxlen]
Listen:建立套接字并将其设置为侦听模式,仅用于TCP连接方式。
PeekData:与GetData相似,只是从输入队列中删除。仅用于TCP连接方式。
SendData:将数据发送给远程计算机。
 事件
Close:当远程计算机关闭连接时触发此事件。
Connect:当连接操作完成后触发此事件。
ConnectionRequest:当远程计算机连接时触发该事件。
DataArrival:数据通过活动连接到达时发生。
Error:后台出错时触发此事件。
SendComplete:完成一个数据操作时出现事件。
SendProgress:发送数据期间触发该事件。
11.2.4  MMControl控件
MMControl控件,简称MCI控件,是用来管理媒体控制接口(MCI)设备的控件。
  (1)MCI控件按钮
MCI控件可以管理的MCI设备为:声卡、MIDI发生器、CD-ROM驱动器、音频播放器、视频播放器、视频磁带录放器等。它像普通控件一样可在窗体上画出,。

原创粉丝点击