Setzt die Anzahl von Abschnitten und Kanten der Abschnitte
#include <GuiStatusBar.au3>
_GUICtrlStatusBar_SetParts ( $hWnd [, $vPartEdge = -1 [, $vPartWidth = 25]] )
$hWnd | Handle des Controls |
$vPartEdge | [optional] Anzahl von Abschnitten. Dies kann ein 0-basierendes Array mit Integern im folgenden Format sein: $vPartEdge[0] - Rechte Kante des Abschnitts #1 $vPartEdge[1] - Rechte Kante des Abschnitts #2 $vPartEdge[n] - Rechte Kante des Abschnitts n |
$vPartWidth | [optional] Breite der Abschnitte. Dies kann ein 0-basierendes Array mit Integern im folgenden Format sein: $vPartWidth[0] - Breite des Abschnitts #1 $vPartWidth[1] - Breite des Abschnitts #2 $vPartWidth[n] - Breite des Abschnitts n |
Erfolg: | True |
Fehler: | False |
Falls ein Item -1 ist, entspricht die rechte Kante des entsprechenden Abschnittes dem Rand vom Fenster.
$vPartWidth wird ignoriert, falls $vPartEdge ein Array ist.
Sind $vPartEdge und $vPartWidth ein Array, so resultiert dies in einem Fehler.
- - - - - - - - Erklärung der Controls - - - - - - - -
#include <GuiConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WindowsConstants.au3>
Global $g_idMemo
Example()
Func Example()
; Erstellt eine GUI
Local $hGUI = GUICreate("StatusBar: Setzt und ermittelt die Anzahl von Abschnitten (v" & @AutoItVersion & ")", 600, 300)
Local $hStatus = _GUICtrlStatusBar_Create($hGUI)
; Erstellt ein Memo Control
$g_idMemo = GUICtrlCreateEdit("", 2, 2, 396, 274, $WS_VSCROLL)
GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
GUISetState(@SW_SHOW)
; Setzt/Ermittelt die Anzahl von Abschnitten
Local $aParts[3] = [75, 150, -1]
_GUICtrlStatusBar_SetParts($hStatus, $aParts)
;Setzt Text und ermittelt die Breite
Local $iParts = _GUICtrlStatusBar_GetCount($hStatus)
For $iI = 0 To $iParts - 1
_GUICtrlStatusBar_SetText($hStatus, "Text " & $iI, $iI)
MemoWrite("Abschnitt " & $iI & " Breite .: " & _GUICtrlStatusBar_GetWidth($hStatus, $iI))
Next
; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example
; Schreibt eine Nachricht in das Memo
Func MemoWrite($sMessage = "")
GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite