tianya1631 发表于 2010-4-12 02:14:34

GUICtrlCreateListView中怎么获取CHECKBOXES选中的数量【已解决】

本帖最后由 tianya1631 于 2010-4-12 15:39 编辑

GUICtrlCreateListView中怎么获取到CHECKBOXES选中的数量? 如下图所示:

nmgwddj 发表于 2010-4-12 03:35:29

本帖最后由 nmgwddj 于 2010-4-12 03:51 编辑

稍等 我给你整个例子#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#include <GuiListView.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("窗体1", 405, 294, 302, 218)
$ListView1 = GUICtrlCreateListView("编号|名称", 16, 16, 369, 201)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 235)
_GUICtrlListView_SetExtendedListViewStyle($ListView1, BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES, $LVS_EX_CHECKBOXES))
$Button1 = GUICtrlCreateButton("看看选几个", 142, 248, 113, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
Write()
While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
                Case $Button1
                        RdListView()

        EndSwitch
WEnd
Func Write()
        For $i = 1 To 10
                GUICtrlCreateListViewItem($i & '|KB' & $i, $ListView1)
        Next
EndFunc   ;==>Write


Func RdListView()
        $s = 0
        $log = _GUICtrlListView_GetItemCount($ListView1)
        For $i = 0 To $log
                If _GUICtrlListView_GetItemChecked($ListView1, $i) = True Then
                        $s += 1
                        MsgBox(0, '', '你选择了第' & $i + 1 & '个项目')
                EndIf
        Next
        MsgBox(0, '', '你选择了' & $s & '个项目,' & $log - $s & '个项目没有选择')
EndFunc   ;==>RdListView

tianya1631 发表于 2010-4-12 09:58:04

回复 2# nmgwddj

谢谢,晚上回去试下。。

netegg 发表于 2010-4-12 11:11:16

if _guictrllistview_getchecked($hwnd, $item) then
_guictrllistview_setitemselected($hwnd, $item)
endif
_GUICtrlListView_GetSelectedCount

tianya1631 发表于 2010-4-12 15:38:49

OK,测试成功,谢谢楼上2位的回答。。

m765555 发表于 2011-3-12 13:42:31

不错,长见识了

mybkc 发表于 2014-9-4 09:32:06

好例子,谢谢大大分享
页: [1]
查看完整版本: GUICtrlCreateListView中怎么获取CHECKBOXES选中的数量【已解决】