热情软件屋

 

带CheckBox的ListView如何获得选择状态


编号:QA002566
建立日期: 2000年2月14日 最后修改日期:2000年2月14日
所属类别:

谢羽真:
    编程工具: VB5.0 SP3
    操作系统: Win98
    在VB中使用以下代码在Listview控件下添加checkbox:
     Dim lStyle As Long
     lStyle = CBool(ChkCheckBox.Value)
    
     Call SendMessage(ListView1.hwnd, _
     LVM_SETEXTENDEDLISTVIEWSTYLE, _
     LVS_EX_CHECKBOXES, ByVal lStyle)
    但是不知如何判断鼠标单击了哪一项左侧的checkbox,以及如何在单击checkbox的同时选中listview中对应的项目。

回答:

    利用SendMessage发送消息LVM_GETITEMSTATE获得状态:
     r = SendMessage(ListView1.hwnd, LVM_GETITEMSTATE, i, LVIS_STATEIMAGEMASK)
     If r And &H2000& Then
     ' 如果返回值为&H2000,就说明Checkbox被选中。
     End If
    相关问题:
    QA000479 "如何使用带Checkbox的ListView"
    QA002241 "SendMessage() API 函数如何使用"

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio