主题:求助~~~菜鸟问题...
无良小弟
[专家分:0] 发布于 2008-08-20 23:42:00
我是一个刚学VB的新手...今天编程的时候碰到点小问题,希望斑竹和各位老鸟多多赐教,问题是这样的,每次我复制控件的时候会弹出一个框,问你是否创建控件数组,请问控件数组是什么意思...希望说的清楚点,因为我是小菜额..,还有创建与否有什么影响。还有就是为什么我复制以后如果创建了控件数组,有些语句就会出错,比如像二个文本框内容相加这样的语句(应该不是文本框标题的错误,这个我注意到了)~~多谢各位大大帮助
回复列表 (共7个回复)
沙发
surver [专家分:120] 发布于 2008-08-21 04:41:00
好久没用VB,有些忘了。我就简单地说说我自己的理解吧:
控件数组,是由一组相同的控件所组成的。控件数组的使用使得编程过程更加灵活方便。比如一组按钮组成的控件,依次命名为Command1(0),Command1(1),Command1(2)……,在编写代码的时候,就可以对这组控件进行非常方便的控制。()中的数字,按照我的理解,就相当于一个个ID,分别对应着数组中的一个个“元素”。有很多时候你可以看见类似Command1(i)的字样(比如说for循环等……),也正是利用了控件数组的特性。这个跟普通的数组应该是非常相似的。
至于你说为什么应用了控件数组有时候会出错,这个我想应该是控件名称的问题吧。比如你复制了一个Command1,建立了控件数组,那么Command1的名字就不再是Command1而是Command1(0)。在这种情况下,原本对Command1编写的代码就会失效。应该对相应代码进行修改,把Command1改成Command1(0)就可以了。
以上是我个人的一些浅见。由于我自己也只学了一丁点儿VB,所以叙述过程中可能有不妥的地方,请见谅~
板凳
一江秋水 [专家分:9680] 发布于 2008-08-21 11:43:00
1楼很对。补充:控件数组创建与否只对使用了控件名称的代码有影响,你只要在代码中按1楼的提示改一下即可
3 楼
无良小弟 [专家分:0] 发布于 2008-08-21 23:59:00
谢谢!!!!茅塞顿开啊~~~
4 楼
无良小弟 [专家分:0] 发布于 2008-08-22 00:24:00
汗..回去试了下,貌似还是不对啊,直接用把Command1改成Command1(0),它说缺乏标识符...
5 楼
无良小弟 [专家分:0] 发布于 2008-08-22 00:24:00
我重建一个工程试试
6 楼
surver [专家分:120] 发布于 2008-08-22 01:52:00
哦?再检查一下各控件的名称和对应的代码是否相符吧。我只是举一个例子啦,未必就一定是Command1(0)的,要看你的控件数组怎么建了,呵呵~
7 楼
老大徒伤悲 [专家分:29120] 发布于 2008-08-22 08:07:00
[quote]汗..回去试了下,貌似还是不对啊,直接用把Command1改成Command1(0),它说缺乏标识符...[/quote]最好你不要直接改,复制、黏贴后在提示框里确认,再黏贴、黏贴……
然后,再代码框的对象组合框里,只有command1,选他的click事件,就会发现过程的头部和以往不同了:
private sub command1_click(index as integer)
end sub
多了index这个就是下标了
在本过程里,?index,或者text1=text1&str(index)等等使用
也可以
select case index
case 0,5
……
case 2 to 4
……
end select
在该按钮数组的其他过程一样使用。
我来回复