这两天在用VB6做一个小程序时出现非常奇怪的问题,期望达人帮忙解决!先谢谢了我把问题简化一下,做个小例子大家可以实验画一个列表框,将Style=1(checkbox)
添加代码:
Private Sub List1_DblClick()
Print List1.ListIndex; List1.Selected(List1.ListIndex)
End Sub
问题来了:
1.假如一项都没有选择的情况下,双击某一项(或者双击没有选中的某一项),得到的结果是错的
2.假如已经单击了某一项(还没勾选),再双击它,得到的结果是对的,实际上此时单击也能勾选我的想法,双击没有选中的项目时,在第一次按下按钮时实际上事件已经发生,判断结果当然是错的了.不知道对还是不对.达人指教一下啊.
我想知道的是为什么会出现这种情况,如何才能得到正确的结果.

解决方案 »

  1.   

    List默认选中第一项,好象你说的情况不存在?
      

  2.   

    呵呵,谢谢楼上回复,这个问题我是这两天才遇到的.我可以把模型说一下,
    我的列表框(style=1)中有多个项目,通过选择当中的某些项目来实现某些要求,需要在选择的同时进行处理(需要判断选中或取消选中).如果每次都选择项目前的复选框那出来没有问题,但如果是通过双击项目(不是直接点复选框)的话,处理就出错了.或者简单的说,列表框(style=1)通过单击项目的复选框可以选择项目或取消项目,也可以通过双击项目来实现,那么在什么事件中处理这个问题呢?如果单击和双击事件都给出的话就会出现无法判断的情况,因为双击事件发生单击时间肯定也会发生,最终还是回到我给出的问题.请达人指教,谢谢!
      

  3.   

    用错事件了,应该在 ItemCheck() 中相应勾选的变化。