Funktionreferenz


_GUICtrlListView_ApproximateViewHeight

Beschreibung anzeigen in

Berechnet die ungefähre Höhe, welche für die Darstellung einer gegebenen Anzahl von Items notwendig ist

#include <GuiListView.au3>
_GUICtrlListView_ApproximateViewHeight ( $hWnd [, $iCount = -1 [, $iCX = -1 [, $iCY = -1]]] )

Parameter

$hWnd Control-ID / Handle des Controls
$iCount [optional] Anzahl von Items, welche im Control dargestellt werden sollen. Falls dieser Parameter auf -1 gesetzt wird, wird die gesamte Anzahl von Items in dem Control verwendet.
$iCX [optional] Vorgeschlagene X-Dimension des Controls in Pixeln. Falls dieser Parameter auf -1 gesetzt wird, wird die aktuelle Breite verwendet.
$iCY [optional] Vorgeschlagene Y-Dimension des Controls in Pixeln. Falls dieser Parameter auf -1 gesetzt wird, wird die aktuelle Höhe verwendet.

Rückgabewert

Gibt die ungefähre Höhe in Pixel, notwendig um die Items darzustellen, zurück

Bemerkungen

Das Setzen der Größe des Controls, basierend auf den Dimensionen kann den Neuaufbau verbessern und das Flimmern reduzieren.

- - - - - - - - Erklärung der Controls - - - - - - - -

Verwandte Funktionen

_GUICtrlListView_ApproximateViewRect, _GUICtrlListView_ApproximateViewWidth

Beispiel

#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <MsgBoxConstants.au3>
#include <WinAPISysWin.au3>

Example()

Func Example()
    Local $iY, $idListView

    GUICreate("ListView: Berechnet die ungefähre Höhe", 400, 300)
    $idListView = GUICtrlCreateListView("", 2, 2, 394, 268)
    GUISetState(@SW_SHOW)

    ; Spalte hinzufügen
    _GUICtrlListView_InsertColumn($idListView, 0, "Spalte 1", 80)

    ; Fügt die Items hinzu
    For $iI = 0 To 9
        _GUICtrlListView_AddItem($idListView, "Zeile " & $iI)
    Next

    MsgBox($MB_SYSTEMMODAL, "Information", "Berechne nun die ungefähre Höhe für die Anzeige der Einträge.")
    ; Neuaufbau des Listviews
    $iY = _GUICtrlListView_ApproximateViewHeight($idListView)
    _WinAPI_SetWindowPos(GUICtrlGetHandle($idListView), 0, 2, 2, 394, $iY, $SWP_NOZORDER)

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>Example