VBA编程-创建对象变量-福哥
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


VBA编程-创建对象变量

发表时间:2022/11/3 8:28:08 评论(0) 浏览(1721)  评论 | 加入收藏 | 复制
   
摘 要:您可以将对象变量视为与其引用的对象完全相同。 您可以设置或返回对象的属性或使用其任何方法。
正 文:

您可以将对象变量视为与其引用的对象完全相同。 您可以设置或返回对象的属性或使用其任何方法

创建对象变量

1.    声明对象变量。

2.    将对象变量分配给对象。

声明对象变量

使用 Dim 语句或其他声明语句之一 (Public、 Private 或 Static) 声明对象变量。 引用对象的变量必须是 VariantObject 或特定类型对象。 例如,以下声明是有效的:

VB复制

' 将MyObject声明为Variant数据类型。

Dim MyObject

' 将MyObject声明为Object数据类型。

Dim MyObject As Object

' 将MyObject声明为字体类型.

Dim MyObject As Font


 备注

[!注释] 如果使用对象变量而不事先声明它,则对象变量的 数据类型默认为 Variant 。

如果某个特定 对象类型在过程运行之前是未知的,则可以声明具有 Object 数据类型的对象变量。 使用 Object 数据类型可创建对任何对象的泛型引用。

如果您知道特定对象类型,则应将对象变量声明为对象类型。 例如,如果应用程序包含 Sample 对象类型,可以使用以下语句之一声明该对象的对象变量:

VB复制

Dim MyObject As Object '声明为泛型对象。

Dim MyObject As Sample ' 仅声明为Sample对象。


声明特定对象类型可实现自动类型检查、加快编码速度和提高可靠性。

将对象变量分配给对象

使用 Set 语句将对象分配给对象变量。 您可以分配对象 表达式或 Nothing。 例如,以下对象变量赋值是有效的。

VB复制

Set MyObject = YourObject ' 指定对象引用。

Set MyObject = Nothing ' 停止关联。

通过结合使用 New 关键字和 Set 语句,可以将声明对象变量与为其分配对象 相结合。 例如:

VB复制

Set MyObject = New Object ' 创建和分配


将对象变量设置为等于 Nothing 将中断对象变量与任何特定对象的关联。 这将防止因意外更改变量而更改对象。 对象变量在关闭关联对象后始终设置为 Nothing ,以便可以测试对象变量是否指向有效对象。 例如:

VB复制

If Not MyObject Is Nothing Then

 ' 变量引用了有效对象。

 . . .

End If


当然,此测试永远无法确定用户是否已关闭包含对象变量引用的对象的应用程序。

引用对象的当前实例

使用 Me 关键字引用运行代码的对象的当前实例。 与当前对象关联的所有过程可以访问称为 Me 的对象。 当将有关对象的当前实例的信息传递到其他模块中的过程时,使用 Me 特别有用。 例如,假定您在模块中包含了以下过程:

VB复制

Sub ChangeObjectColor(MyObjectName As Object)

 MyObjectName.BackColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256)

End Sub

可以通过使用下面的语句调用过程,并作为参数传递对象的当前实例:

VB复制

ChangeObjectColor Me


Access软件网交流QQ群(群号:198465573)
 
 相关文章
在变量中用单双引号的方法  【竹笛  2007/10/18】
全局变量的数据类型--文本型和数字型之间的转换  【Suve  2007/12/16】
Public与Private的区别,Sub与Private Sub...  【竹笛  2010/9/6】
快速开发平台-组合框模糊查询-searchcombocox类创建对...  【金宇  2016/2/13】
定义变量的时候public与private和dim有什么区别?  【麥田  2016/5/5】
【Access示例】定义静态变量  【杨雪  2019/10/25】
【Access扫盲知识】自动编号是什么变量类型?自动编号用什么变量...  【麥田  2022/1/27】
常见问答
技术分类
相关资源
文章搜索
关于作者

福哥

文章分类

文章存档

友情链接