vb 中怎样为多个checkbox 控件赋值

peiquan 2002-09-03 05:42:02
我在窗口中放了20个checkbox 控件,现用循环的方式把他们的value都置为1,
如下:
dim i as integar
dim s as string
for i=1 to 20 step 1
s="check" & i
s.value=1
next

运行提示“无效的限定符”,请问这是怎么回事,该怎样解决。
...全文
483 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hahadi 2002-09-03
  • 打赏
  • 举报
回复
上面的方法好象都可以实现。
snoweagle 2002-09-03
  • 打赏
  • 举报
回复
用它:
Me.Controls("Check1").value
Andy_li 2002-09-03
  • 打赏
  • 举报
回复
用以下代码可以实现:
Dim s As Control

For Each s In Me.Controls
If TypeOf s Is CheckBox Then
s.Value = 1
End If
Next
sunjiujiu 2002-09-03
  • 打赏
  • 举报
回复
建议你用控件数组,也就是建立check1(0),check1(1),....check1(19)等20个check控件,然后:
For i = 0 To 19 Step 1
Check1(i).Value = 1
Next


你上面的问题是你把s定义为string,而string并非是check,也没有value的属性,所以会出错.可以定义为:
dim s as checkbox,但由于check控件的name属性为只读的,所以无法得到各个控件的名称,也就无法完成赋值操作.
friends1979 2002-09-03
  • 打赏
  • 举报
回复
你可以建一个CheckBox控件数组

具体如下:
将所有的name都写为:CheckBox1
将他们的Index属性一次复值为:0,1、、、、、20

在你的Form_Load()中:

Dim i As Integer

For i=0 to Check.Count-1
Check1(i).Value=1
Next

如果对了,请你一定要给我分
谢谢、、、、、、
bonoli 2002-09-03
  • 打赏
  • 举报
回复
用数组了
把那20个checkbox设为一个控件数组,例如名字都叫check1,索引从0-19
dim i as integar
for i=1 to 20
check1(i-1).value=1
next i

1,453

社区成员

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

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