Code : Tout sélectionner
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.4.0
Author: GELDROC
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
Opt("GUIOnEventMode", 1)
#include <GuiListView.au3>
#include <GuiImageList.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Local $GUI = GUICreate("exemple", 640, 480, -1, -1)
GUISetState()
GUISetOnEvent(-3, "_exit")
Local $LIST = GUICtrlCreateListView("", 10, 10, 620, 460, BitOR($LVS_SHOWSELALWAYS, $LVS_REPORT), BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES))
_GUICtrlListView_AddColumn($LIST, "col 1", 100)
_GUICtrlListView_AddColumn($LIST, "col 2", 100)
GUISetState()
$IMG_LIST = _GUIImageList_Create(16, 16, 5, 3)
_GUIImageList_AddIcon($IMG_LIST, "icon1.ico")
_GUIImageList_AddIcon($IMG_LIST, "icon2.ico")
_GUICtrlListView_SetImageList($LIST, $IMG_LIST, 1)
GUISetState()
_GUICtrlListView_AddItem($LIST, "item 1", 0)
_GUICtrlListView_AddSubItem($LIST, 0, "sub item 1", 1, 1)
_GUICtrlListView_AddItem($LIST, "item 2", 0)
_GUICtrlListView_AddSubItem($LIST, 1, "sub item 2", 1, 1)
GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
While 1
sleep(100)
WEnd
Func _exit()
Exit
EndFunc
Func WM_NOTIFY($GUI, $iMsg, $iwParam, $ilParam)
#forceref $hWnd, $iMsg, $iwParam
Local $HLIST = $LIST, $S
If Not IsHWnd($LIST) Then $HLIST = GUICtrlGetHandle($LIST)
Switch HWnd(DllStructGetData(DllStructCreate($tagNMHDR, $ilParam), "hWndFrom"))
Case $HLIST
Switch DllStructGetData(DllStructCreate($tagNMHDR, $ilParam), "Code")
Case $NM_CLICK
$S = _GUICtrlListView_GetSelectedIndices($LIST)-1
MsgBox(0, "Get item or sub item text n° "&$S, _GUICtrlListView_GetItemText($LIST, $S+1, 1))
EndSwitch
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc