Ermittelt das Rechteck für die festgelegte Gruppe
#include <GuiListView.au3>
_GUICtrlListView_GetGroupRect ( $hWnd, $iGroupID [, $iGet = $LVGGR_GROUP] )
$hWnd | Control-ID / Handle des Controls |
$iGroupID | ID der Gruppe, deren Informationen ermittelt werden sollen |
$iGet | [optional] Flag, welches die zu ermittelnden Koordinaten des Rechtecks festlegt, kann eines der Folgenden sein: $LVGGR_GROUP - Koordinaten der ganzen erweiterten Gruppe $LVGGR_HEADER - nur Koordinaten der Überschrift (zugeklappte Gruppe) $LVGGR_LABEL - nur Koordinaten des Labels $LVGGR_SUBSETLINK - nur Koordinaten des "subset link" (markup subset) |
Mindestvoraussetzung Betriebssystem: Windows Vista oder neuer
- - - - - - - - Erklärung der Controls - - - - - - - -
#include <GUIConstantsEx.au3>
#include <GuiImageList.au3>
#include <GuiListView.au3>
#include <MsgBoxConstants.au3>
Example()
Func Example()
GUICreate("ListView: Ermittelt das Rechteck für die festgelegte Gruppe (v" & @AutoItVersion & ")", 600, 300)
Local $idListview = GUICtrlCreateListView("", 2, 2, 394, 268)
GUISetState(@SW_SHOW)
; Setzt das ANSI Format
;~ _GUICtrlListView_SetUnicodeFormat($idListview, False)
; Lädt die Bilder
Local $hImage = _GUIImageList_Create()
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap(GUICtrlGetHandle($idListview), 0xFF0000, 16, 16))
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap(GUICtrlGetHandle($idListview), 0x00FF00, 16, 16))
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap(GUICtrlGetHandle($idListview), 0x0000FF, 16, 16))
_GUICtrlListView_SetImageList($idListview, $hImage, 1)
; Fügt die Spalten hinzu
_GUICtrlListView_AddColumn($idListview, "Spalte 1", 120)
_GUICtrlListView_AddColumn($idListview, "Spalte 2", 120)
_GUICtrlListView_AddColumn($idListview, "Spalte 3", 120)
; Fügt die Items hinzu
_GUICtrlListView_AddItem($idListview, "Zeile 1: Spalte 1", 0)
_GUICtrlListView_AddSubItem($idListview, 0, "Zeile 1: Spalte 2", 1)
_GUICtrlListView_AddSubItem($idListview, 0, "Zeile 1: Spalte 3", 2)
_GUICtrlListView_AddItem($idListview, "Zeile 2: Spalte 1", 1)
_GUICtrlListView_AddSubItem($idListview, 1, "Zeile 2: Spalte 2", 1)
_GUICtrlListView_AddItem($idListview, "Zeile 3: Spalte 1", 2)
; Gruppen erzeugen
_GUICtrlListView_EnableGroupView($idListview)
_GUICtrlListView_InsertGroup($idListview, -1, 1, "Gruppe 1", 1)
_GUICtrlListView_InsertGroup($idListview, -1, 2, "Gruppe 2")
_GUICtrlListView_SetItemGroupID($idListview, 0, 1)
_GUICtrlListView_SetItemGroupID($idListview, 1, 2)
_GUICtrlListView_SetItemGroupID($idListview, 2, 2)
; Ermittelt das Rechteck der Gruppen ID 2
Local $aInfo = _GUICtrlListView_GetGroupRect($idListview, 2)
MsgBox($MB_SYSTEMMODAL, "Information", "Rechteck: " & @CRLF & _
@TAB & "Links...: " & $aInfo[0] & @CRLF & _
@TAB & "Oben...: " & $aInfo[1] & @CRLF & _
@TAB & "Rechts.: " & $aInfo[2] & @CRLF & _
@TAB & "Unten..: " & $aInfo[3])
; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example
#include "WinAPISysWin.au3"
#include <GuiListView.au3>
#include <WinAPISysWin.au3>
Example() ; Ein ListView-Steuerelement, das mit einem externen ListView erstellt wurde
Func Example()
Local $sExternalScript = StringReplace(@ScriptName, "[2]", "")
Local $iPID = Run(@AutoItExe & " " & $sExternalScript)
Local $hWin = WinWaitActive("ListView Get Group Info", "")
Local $hListView = _WinAPI_EnumChildWindows($hWin)[1][0]
; Ermittelt das Rechteck der Gruppen-ID 2
Local $aInfo = _GUICtrlListView_GetGroupRect($hListView, 2)
MsgBox($MB_SYSTEMMODAL, "Information (extern)", "Rechteck :" & @TAB & @TAB & @TAB & @CRLF & _
@TAB & "Links..: " & $aInfo[0] & @CRLF & _
@TAB & "Oben...: " & $aInfo[1] & @CRLF & _
@TAB & "Rechts.: " & $aInfo[2] & @CRLF & _
@TAB & "Unten..: " & $aInfo[3])
ProcessClose($iPID)
EndFunc ;==>Example