vb 复选框变单选

a_aaaa8888 2009-01-11 09:31:23
有复选框
for i= 0 to 1
Check2(i)
现在要让这两个复选实现单选功能,即点击无论怎么点击都只能一个被选中
If Check2(0).Value = 1 Then Check2(1).Value = 0
If Check2(1).Value = 1 Then Check2(0).Value = 0
这段代码如果是Check2和Check3好使,但用到Check2(i)就不好使,该怎么改
...全文
157 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
SYSSZ 2009-01-11
  • 打赏
  • 举报
回复
Private Sub Check1_Click(Index As Integer)
Select Case Index
Case 0
If Check1(O).Value = 0 Then
Check1(1).Value = 1
Else
Check1(1).Value = 0
End If
Case 1
If Check1(1).Value = 0 Then
Check1(0).Value = 1
Else
Check1(0).Value = 0
End If
End Select
End Sub
Simao 2009-01-11
  • 打赏
  • 举报
回复
2楼说的 对,这样可以解决问题 !
yesvery 2009-01-11
  • 打赏
  • 举报
回复
当你点击复选框,进入事件过程,
而在事件过程中由于你又修改了复选框的Value值而又再次引发事件过程
解决的办法是对每个复选框附加一个布尔变量,如下:

Option Explicit
Dim b(1) As Boolean

Private Sub Form_Load()
b(0) = True
b(1) = True
End Sub

Private Sub Check1_Click(Index As Integer)
If Check1(0).Value = 1 And b(0) = True Then
Check1(1).Value = 0
b(1) = True
b(0) = False
End If

If Check1(1).Value = 1 And b(1) = True Then
Check1(0).Value = 0
b(1) = False
b(0) = True
End If
End Sub

ComingCS 2009-01-11
  • 打赏
  • 举报
回复
为什么不用 OptionButton 呢?

7,789

社区成员

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

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