创建自己的类可以从零开始创建,包括类的属性方法和事件,也可以继承你引入对象的属性和方法事件,比如: class1: public myform as form public sub mymethod(byval tt as long) beep(tt) raiseevent myevents '引发事件 end sub event myevents() '定义事件在窗体中就可以使用这个类了: form1中的代码 dim withevents mycls as new class1private sub command1.click() mycls.form=me mycls.mymethod 5 end subprivate sub mycls_myevents msgbox "events raised" end sub我没有试,你调试一下,应该没有问题的.
对了, 类的属性myform 是对象,所以应该这样 private sub command1.click() set mycls.form=me mycls.mymethod 5 end sub 你还可以引用这个对象属性的属性: msgbox mycls.myform.caption 于是会显示当前窗体的标题.
对了, 类的属性myform 是对象,所以应该这样 private sub command1.click() set mycls.form=me mycls.mymethod 5 end sub 你还可以引用这个对象属性的属性: msgbox mycls.myform.caption 于是会显示当前窗体的标题. 继承对象属性可以这样: private cap as string Public Property Get caption() As Variant caption=cap End PropertyPublic Property Let caption(ByVal vNewValue As Variant) cap=vnewvalue End Property
但是还是不能想ADO一样
你的对象B有属性 propA,类型为A
则就可以使用这样的表达式:B.propA.count
但是如何实现
b.propa(0).value
就是如果 b.propa.count
如果客户端 b.propa(0).name 或 b.propa(0).value
然后在外接程序里加载类生成器工具
新增类型选集合
集合组成选你自定义的子类
确定,ok了:)
class1:
public myform as form
public sub mymethod(byval tt as long)
beep(tt)
raiseevent myevents '引发事件
end sub
event myevents() '定义事件在窗体中就可以使用这个类了:
form1中的代码
dim withevents mycls as new class1private sub command1.click()
mycls.form=me
mycls.mymethod 5
end subprivate sub mycls_myevents
msgbox "events raised"
end sub我没有试,你调试一下,应该没有问题的.
private sub command1.click()
set mycls.form=me
mycls.mymethod 5
end sub
你还可以引用这个对象属性的属性:
msgbox mycls.myform.caption
于是会显示当前窗体的标题.
private sub command1.click()
set mycls.form=me
mycls.mymethod 5
end sub
你还可以引用这个对象属性的属性:
msgbox mycls.myform.caption
于是会显示当前窗体的标题.
继承对象属性可以这样:
private cap as string
Public Property Get caption() As Variant
caption=cap
End PropertyPublic Property Let caption(ByVal vNewValue As Variant)
cap=vnewvalue
End Property
MSDN>>Visual Basic 文档>>使用Visual Basic>>程序员指南>>Visual Basic能做什么>>用对象编程>>创建自己的集合类