请问在VB中能不能实现这样的功能?

gen2 2004-10-10 10:59:00
请问在VB中能不能实现这样的功能:

Class A
Public m_fieldsCollection As Collection

Private Sub Initialize()
m_fieldsCollection.Add("field1")
m_fieldsCollection.Add("field2")
End Sub
....
End Class

我现在想有这样的一个调用:
instanceA("field1") = "abc"
而这个调用可以设定m_fieldsCollection集合中的field1元素, 请问有没有办法实现?
...全文
209 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
AKillGodKillBuddha 2004-10-11
  • 打赏
  • 举报
回复
同意楼上
hhjjhjhj 2004-10-11
  • 打赏
  • 举报
回复
工程中加入一个类(Class1),再次菜单操作:工程--添加类模块--VB类生成器,给Class1加一个属性(如取名Daulft),并把它设置成默认属性(因为默认属性的设置不会在代码中表现出来,只好用向导生成),自动生成如下代码
Private mvardefult As Variant
Public Property Let defult(ByVal vData As Variant)
mvardefult = vData
End Property

Public Property Set defult(ByVal vData As Variant)
Set mvardefult = vData
End Property
Public Property Get defult() As Variant
If IsObject(mvardefult) Then
Set defult = mvardefult
Else
defult = mvardefult
End If
End Property

然后就可以在窗体中使用了,示例代码如下
Dim a As Collection
Dim b(3) As Class1
Private Sub Command1_Click()
Set a = New Collection
Set b(0) = New Class1
Set b(1) = New Class1
a.Add b(0), "feild1"
a.Add b(1), "feild2"
a("feild1") = "abc"
MsgBox a("feild1")
End Sub

注:楼主可能是先学VC再学VB,VB比VC智能,不用那么复杂,除非是做ActiveX工程,否则很少用到类模块
韧恒 2004-10-11
  • 打赏
  • 举报
回复
是啊,定义一个类不就行了。
hhjjhjhj 2004-10-11
  • 打赏
  • 举报
回复
明天给你答
junki 2004-10-11
  • 打赏
  • 举报
回复
关注,学习学习
jam021 2004-10-10
  • 打赏
  • 举报
回复
关注,帮你顶!
BlueBeer 2004-10-10
  • 打赏
  • 举报
回复
帮顶
northwolves 2004-10-10
  • 打赏
  • 举报
回复
感觉还不如用数组
starsoulxp 2004-10-10
  • 打赏
  • 举报
回复
up
liuberlin 2004-10-10
  • 打赏
  • 举报
回复
学习
DerryZhang 2004-10-10
  • 打赏
  • 举报
回复
up
xieguochao 2004-10-10
  • 打赏
  • 举报
回复

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧