能不能用一个变量代替控件名?
我要根据条件使用不同的控件数组(如Line1(2)、Line2(2)等),能不能用一个变量代替控件名Line1或Line2?
如aa="Line1"或"aa="Line2",然后在使用控件的时候用aa来代替Line1或Line2
谢谢!
问题点数:50、回复次数:14Top
1 楼faysky2(出来混,迟早是要还嘀)回复于 2006-03-03 14:50:10 得分 0
用字符串变量来代替 控件对象是不行的Top
2 楼rainstormmaster(暴风雨 v2.0)回复于 2006-03-03 14:55:59 得分 20
可以,用Controls(字串)获得指定的对象,必要时可以用callbyname:
一个按钮,一个textbox:
Private Sub Command1_Click()
Dim s As String
s = "text1"
Dim a As TextBox
Set a = Controls(s)
a.Text = "hello"
End Sub
Top
3 楼ZOU_SEAFARER(颓废程序员^_^)回复于 2006-03-03 15:23:55 得分 0
rainstormmaster(暴风雨 v2.0) 牛人!Top
4 楼rainstormmaster(暴风雨 v2.0)回复于 2006-03-03 15:29:10 得分 20
用 CallByName的写法是这样:
Private Sub Command1_Click()
Dim s As String
s = "text1"
Dim a As TextBox
Set a = CallByName(Me, s, VbGet)
a.Text = "hello"
End SubTop
5 楼faysky2(出来混,迟早是要还嘀)回复于 2006-03-03 15:56:00 得分 0
向 rainstormmaster(暴风雨 v2.0) 学习了 ^_^Top
6 楼Silo(炽天之翼)回复于 2006-03-03 16:09:44 得分 0
长见识了,我以前也是认为不可以的,呵呵Top
7 楼AnnaBear(淡淡)回复于 2006-03-03 16:27:16 得分 0
这样也可以呀,厉害,学习!Top
8 楼wxrwan(无奈小飞不耻上问)回复于 2006-03-04 00:43:42 得分 0
学习Top
9 楼DengXingJie(杰西)回复于 2006-03-04 09:01:07 得分 0
rainstormmaster(暴风雨 v2.0)你簡直是我的偶像
昨天我正在思考這個問題,並且已經放棄
Top
10 楼samwzhang(分全给我)回复于 2006-03-04 09:37:06 得分 0
rainstormmaster(暴风雨 v2.0) 的方法中,将a定义成object更好Top
11 楼samwzhang(分全给我)回复于 2006-03-04 09:39:18 得分 0
当然,如果想获得事件,就 定义成VBControlExtenderTop
12 楼province_(雍昊)回复于 2006-03-04 10:26:25 得分 0
RAINSTORM的FANS真多,可惜全是男的,没艳福,^_^.Top
13 楼kenth(傻强)回复于 2006-03-04 10:41:08 得分 10
如果是控件数组呢?怎么办?如text1(0)Top
14 楼J_Zanetti(国际米兰的阿飞)回复于 2006-03-04 13:38:32 得分 0
长见识了,,,向暴风雨学习Top




