主题:textbox后面的编号能用变量替代不?
zq9901
[专家分:0] 发布于 2008-06-08 10:16:00
小弟初学vb,提的问题可能让大家见笑了:我安排了14个(textbox1~14)个文本框用于接受数据,安排了循环方式逐个读取textbox 各点数据,但对textbox后面的编号用变量如何正确代表不是太清楚,恳请大家给与点拨,先谢过了!
回复列表 (共10个回复)
沙发
天天学习 [专家分:4570] 发布于 2008-06-08 11:05:00
用控件数组.
for i =1 to 14
textbox[color=red](i)[/color].text="..."
next
板凳
p1s [专家分:4100] 发布于 2008-06-08 11:26:00
LZ貌似用的不是数组
必须要用控件数组,如果你复制粘贴控件的话系统会提示的
3 楼
snyga [专家分:1480] 发布于 2008-06-09 10:04:00
也可以用 for each 遍历textbox 控件
4 楼
老大徒伤悲 [专家分:29120] 发布于 2008-06-09 22:43:00
首先考虑使用数组
实在不行再考虑“历遍控件找文本”
5 楼
zq9901 [专家分:0] 发布于 2008-06-13 23:31:00
编写了下面的程序,发现a(i)没被赋值。我是这样理解的:有a1=100时,当a(i)中i为1时,有a1=a(i),即两者数值为100,不知这样理解对不,请指教,谢谢
Dim a(1 to 3) as string
Dim I as integer
a1=100
a2=150
a3=200
for I =1 to 3
msgbox a(i)
next i
6 楼
jianghongbo1 [专家分:410] 发布于 2008-06-14 07:56:00
把msgbox放在循环里,你在调试程序呀.
7 楼
老大徒伤悲 [专家分:29120] 发布于 2008-06-14 10:46:00
a1
与
a(1)
是不同的:
a1是一个简单变量;
a(1)是数组a的下标为1的元素(通常是第二个)
所以:5楼的结果就是正常的。
8 楼
老大徒伤悲 [专家分:29120] 发布于 2008-06-14 10:49:00
建议:
一、如果你得代码还没有写多少的话,采用1楼、2楼方案建立“文本框数组”。
二、如果你得代码已经写得很多了(例如500多行),建议采用我在4楼的建议。
如果不会操作,继续联系。
9 楼
zq9901 [专家分:0] 发布于 2008-06-14 22:28:00
看了7-8楼的指点,我还是理解有误。能不能介绍一下文本框数组和文本框控件之间是不是依靠循环变量来对应数组和文本框,也就是把相应的文本框内数据赋值给和其对应的文本数组。
10 楼
老大徒伤悲 [专家分:29120] 发布于 2008-06-14 23:56:00
一个学校管理学生,使用的是“姓名”管理,就是,叫张三、李斯……
另一个学校管理学生,是以班为单位,只说某某班若干号学生
前者,就像简单变量
后者,就像数组
简单变量的名字虽然也可以叫“张三”,但他绝不是张家的第三个人;
也许有一个班的名字叫“张”,张(3)则表示这个班学号是3的那个学生。
上面是就一般变量而言。对控件也是如此。
text21,是一个控件的名字。
text2(1),是一组控件(名字是text2)中的序号为1的那个。
我能想到的,就这些。
建议你看看变量命名那部分,基础很重要。人常说:万丈高楼平地起。望你深刻理解。
我来回复