作者:绿色风
分类:
时间:2022-08-17
浏览:140
楼主 水星钓鱼 |
Q:类模块中的Class_Initialize和Class_Terminate有什么作用? A:这两个过程分别在类被实例化和类的实例被释放时运行,可以参照Workbook的Open、Close事件,或者窗体UserForm的Initialize、Terminate事件来理解。 根据它们的作用可以用这两个过程来做一些初始化的工作,如给类的属性设置默认值,以及其它的任何操作。 下面举一个例子来说明它们的用法 代码如下: 在类模块“类1”中输入以下代码:- Dim temp
- Property Get value() As String
- value = temp
- End Property
- Property Let value(str As String)
- temp = str
- End Property
- Private Sub Class_Initialize()
- MsgBox "Hello!你已开始使用类"
- value = "我是默认值"
- End Sub
- Private Sub Class_Terminate()
- MsgBox "你已退出使用类,88"
- End Sub
在工作表、工作簿、或者标准模块输入以下代码:- Sub xyf()
- Dim obj As 类1
- Set obj = New 类1
- MsgBox obj.value
- obj.value = "新的值"
- MsgBox obj.value
- Set obj = Nothing
- End Sub
按F8逐行运行xyf中的语句,当运行到Set obj = New 类1时,将初始化类,触发Class_Initialize事件,执行Class_Initialize事件下的代码,当运行到 Set obj = Nothing时,将释放类,触发Class_Terminate事件,运行Class_Terminate下的代码。 |
2楼 xyh9999 |
学习 |
3楼 じ☆潴の︵ゞ |
学习了 |
4楼 qazwer168 |
真的牛,双手赞成,谢谢了 |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一