注册 登录
编程论坛 VB6论坛

求个vb CreateWindow 复选listbox

mmm325400 发布于 2021-05-06 00:45, 1701 次点击
求个vb CreateWindow 复选listbox
方便动态创建UI。其次VB自带的复选listbox在XP样式下有个BUG


点击超过 ListCount 时 最后一项 会被勾选或者去掉勾选,且不激发 ItemCheck

点击超过 ListCount 时 ListIndex 勾选会被去掉,且不激发 ItemCheck
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录
4 回复
#2
风吹过b2021-05-06 08:20
允许多选的情况下,一般都是在 list1_Click 事件里,遍类所有的选项,判断是否选中。
一般不使用 ItemCheck 事件。

#3
mmm3254002021-05-06 09:14
回复 2楼 风吹过b
它把ListIndex 那项也点了。没有启用XP样式都是正常的
#4
风吹过b2021-05-06 11:56
我在WIN7下面,没这个BUG。所以不知道问题出在哪。估计是控件自身的问题。。。。。

#5
mmm3254002021-05-06 13:03
回复 4楼 风吹过b
加XP风格了吗,不加没这个BUG的,事件里放个msgbox
程序代码:

Private Sub Form_Load()
    For i = 0 To 10
        List1.AddItem i
    Next
End Sub

Private Sub List1_Click()
    MsgBox "List1_Click", , List1.ListIndex
End Sub

Private Sub List1_ItemCheck(Item As Integer)
    MsgBox "List1_ItemCheck"
End Sub


[此贴子已经被作者于2021-5-6 13:05编辑过]

1