中国IT资源网 设为首页
加入收藏
网站建设
您当前的位置:中国IT资源网 -> 文章 -> 软件开发 -> VB -> 文章内容
 自制控件方面的有关知识
1.
在程序中注册和注销 OCX 控件 98-7-20
声明(在本例子里使用的是 ComCtl32.OCX,如果是其他,使用相应的名称):
Declare Function RegComCtl32 Lib "ComCtl32.OCX" _
Alias "DllRegisterServer" () As Long
Declare Function UnRegComCtl32 Lib "ComCtl32.OCX" _
Alias "DllUnregisterServer" () As Long
Const ERROR_SUCCESS = &H0

使用:

If RegComCtl32 = ERROR_SUCCESS Then
MsgBox "Registration Successful"
Else
MsgBox "Registration Unsuccessful"
End If

If UnRegComCtl32 = ERROR_SUCCESS Then
MsgBox "UnRegistration Successful"
Else
MsgBox "UnRegistration Unsuccessful"
End If

2.
建立可下拉选择的属性
例如在 BorderStyle 中有以下的四个选择:
0 - None
1 - Dashed
2 - Single Line
3 - Double Line
4 - 3D
首先在控件中定义以下的集合:
Enum BorderType
None
Dashed
[Single Line]
[Double Line]
[3D]
End Enum
然后就可以把属性的类型设置好:
Public Property Get BorderStyle() As BorderType
Border = m_BorderStyle
End Property

Public Property Let BorderStyle(ByVal New_BorderStyle As BorderType)
m_BorderStyle = New_BorderStyle
PropertyChanged "BorderStyle"
End Property

3.
缺省值和可选参数
VB5 加强了函数参数方面,可用以下的代码实现参数缺省:

Property Get Value(Optional index As Long = 1)
...
End Property
也可使用另一个方法(慢):

Property Get Value(Optional index As Long)
If IsMissing(index) Then index = 1
...
End Property

4.
多个参数的属性
在自制的控件中,可能需要对某个属性传递多个值:

Property Let Test (arg1 As String, arg2 As String, arg3 As Integer)
End Property

'用以下的方法传递参数:
Test(arg1,arg2) = arg3

5.
使用数组做属性
定义一个 variant 类型的属性,即可用它来做数组。
下面定义了一个 CArray 类。

Private m_MyArray As Variant

Public Property Get MyArray() As Variant
MyArray = m_MyArray
End Property

Public Property Let MyArray(a As Variant)
m_MyArray = a
End Property

可用以下的方法使用:

Private m_Array As CArray
Private mArr(3) As String

Private Sub Form_Load()
Set m_Array = New CArray
mArr(1) = "One"
mArr(2) = "Two"
mArr(3) = "Three"
m_Array.MyArray = mArr()
'或者
'm_Array.MyArray = Array("One", "Two", "Three")
End Sub

Private Sub Form_Unload(Cancel As Integer)
Dim i As Integer
For i = 1 To UBound(m_Array.MyArray)
MsgBox m_Array.MyArray(i)
Next
End Sub


评论】【打印】【 】【关闭
  用API函数改进ListView控件的显示效果 
  运行时改变控件大小的两种方法
 
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 在线投稿

中国IT资源网版权所有
Copyright © 2002-2006 Gz235.Com All Rights Reserved
中华人民共和国电信与信息服务业务经营许可证编号 粤ICP备05022918号
本站在线服务QQ:105754049 程序定制:105754049 广告受理/投搞/投诉:105754049
本站所提供的程序均来自于 Internet(下载后首先检测是否有毒),仅供学习使用。因其产生的一切问题本站不负任何责任