第七讲:利用类事件改变对象的属性(上)

《VBA中类的解读及应用》教程【10165646】是我推出的第五套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。

类,是非常抽象的,更具研究的价值。随着我们学习、应用VBA的深入,有必要理解这些抽象的理论知识。对象,类,过程,方法,属性,事件,接口,接口如何实现等等。掌握了这些理论,不仅对于VBA这种寄生语言的实质有所深入的理解,也对自然界的很多事物将同样有所感悟。目前,这套教程程序文件已经通过32位,64位两种office系统测试。

这套教程共两册,八十四讲,今后一段时间会给大家陆续推出修订后的教程内容。今日的内容是:第七讲:利用类事件改变对象的属性(上)第七讲:利用类事件改变对象的属性(上)_第1张图片

【分享成果,随喜正能量】思想纯正,没有杂念,心地清净、真诚、慈悲,所以你整个体质都发生了大的变化,这就能够度化众生。众生看到你,你不必讲话,看你这样子就行了。。

第七讲  利用类事件改变对象的属性

大家好,我们在之前的讲解中,讲到了类对象属性的赋值及读取办法,也讲了如何赋值给类的对象,我们这讲的内容要通过一个实例来讲解如何利用类的事件来改表类对象的属性。

u在上一讲中我们讲了给类命名事件用Event语句,我们要注意以下的几点理解:

1 Event总是Public的。

2 事件可以不带参数,也可以带参数,但参数不能是命名参数,可选参数或数组参数。

3 事件是能够被对象识别的动作

1通过窗体控件改变类属性的实例分析

我们看今日的实例:在一个窗体中,我们要求显示一个类的属性,并通过一个TEXTBOX控件的内容可以改变这个属性,在改变属性之前,要有确认的操作。

思路:为了完成上述的要求,我们首先要使用Event语句声明事件;然后,建立一窗体UserForm3,添加一个TextBox控件(名称为TextBox1),两个CommandButton控件(名称为CommandButton1和CommandButton2),CommandButton1的Caption设置为“赋值”,CommandButton2的Caption设置为“显示”。在点击显示时可以在TEXT中显示此时对象的属性值。在TEXT中录入你需要的值,点击赋值,程序会提示“是否要赋值”的确认。

2实现通过窗体控件改变类属性的实例代码

下面我们看代码部分:

在类模块中:我们要对事件做声明,声明一个类的change事件。如下:

Public Event Change(ByRef Cancel As Boolean)

同时看看对于myclass类模块的代码也有修正:

Option Explicit

Public Event Change(ByRef Cancel As Boolean)

Private s$

Public Property Get r() As String

  r = s

End Property

Public Property Let r(ByVal c As String)

  Dim mybark As Boolean

  RaiseEvent Change(mybark)

  If mybark Then Exit Property

  s = c

End Property

Public Sub Class_Initialize() '赋初始值

 s = "0008"

End Sub

代码讲解:以上代码中在Let赋值的过程中增加了一个判断。

代码截图:

第七讲:利用类事件改变对象的属性(上)_第2张图片


今日内容回向:

1 类的事件是如何创建的?

2 什么是类的事件?

本讲内容参考程序文件:VBA-CLASS(1-28).xlsm

第七讲:利用类事件改变对象的属性(上)_第3张图片

今日内容回向:

1 类的事件是如何创建的?

2 什么是类的事件?

本讲内容参考程序文件:VBA-CLASS(1-28).xlsm

第七讲:利用类事件改变对象的属性(上)_第4张图片

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:


第七讲:利用类事件改变对象的属性(上)_第5张图片

第七讲:利用类事件改变对象的属性(上)_第6张图片

你可能感兴趣的:(VBA,OFFICE,开发语言)