Hi,
ich arbeite gerade an einem Listview mit Gruppen.
Also Beispiel kann die Hilfe zu _GUICtrlListView_GetItemGroupID herhalten.
Spoiler anzeigen
AutoIt
#include <GUIConstantsEx.au3>
#include <GuiImageList.au3>
#include <GuiListView.au3>
#include <MsgBoxConstants.au3>
Example()
Func Example()
Local $hImage, $idListview
GUICreate("ListView Get Item Group ID", 400, 300)
$idListview = GUICtrlCreateListView("", 2, 2, 394, 268)
GUISetState(@SW_SHOW)
; Load images
$hImage = _GUIImageList_Create()
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($idListview, 0xFF0000, 16, 16))
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($idListview, 0x00FF00, 16, 16))
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($idListview, 0x0000FF, 16, 16))
_GUICtrlListView_SetImageList($idListview, $hImage, 1)
; Add columns
_GUICtrlListView_AddColumn($idListview, "Column 1", 100)
_GUICtrlListView_AddColumn($idListview, "Column 2", 100)
_GUICtrlListView_AddColumn($idListview, "Column 3", 100)
; Add items
_GUICtrlListView_AddItem($idListview, "Row 1: Col 1", 0)
_GUICtrlListView_AddSubItem($idListview, 0, "Row 1: Col 2", 1)
_GUICtrlListView_AddSubItem($idListview, 0, "Row 1: Col 3", 2)
_GUICtrlListView_AddItem($idListview, "Row 2: Col 1", 1)
_GUICtrlListView_AddSubItem($idListview, 1, "Row 2: Col 2", 1)
_GUICtrlListView_AddItem($idListview, "Row 3: Col 1", 2)
; Build groups
_GUICtrlListView_EnableGroupView($idListview)
_GUICtrlListView_InsertGroup($idListview, -1, 1, "Group 1")
_GUICtrlListView_InsertGroup($idListview, -1, 2, "Group 2")
_GUICtrlListView_SetItemGroupID($idListview, 0, 1)
_GUICtrlListView_SetItemGroupID($idListview, 1, 2)
_GUICtrlListView_SetItemGroupID($idListview, 2, 2)
; Display Item 3 group ID
MsgBox($MB_SYSTEMMODAL, "Information", "Item 3 Group ID: " & _GUICtrlListView_GetItemGroupID($idListview, 2))
; Loop until the user exits.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example
Alles anzeigen
Und zwar geht es mir jetzt darum herauszufinden welche Items z.B. in Gruppe 2 sind. Hie wären das Item 2 und Item 3.
Mir fällt dazu nur eine Lösung ein: man durchsucht das gesamte Listview und fragt zu jedem Item per _GUICtrlListView_GetItemGroupID die zugehörige ID ab und sortiert diese ID's dann selbst nochmal.
Was meint ihr dazu? Geht das auch einfacher?
Gesucht: _GUICtrlListView_GetGroupitems($hwnd, $groupID)
Gruß
nuts