Sets the number of parts and the part edges
#include <GuiStatusBar.au3>
_GUICtrlStatusBar_SetParts ( $hWnd [, $vPartEdge = -1 [, $vPartWidth = 25]] )
$hWnd | Handle to the control |
$vPartEdge | [optional] Number of parts, can be an 0-based array of ints in the following format: $vPartEdge[0] - Right edge of part #1 $vPartEdge[1] - Right edge of part #2 $vPartEdge[n] - Right edge of part n |
$vPartWidth | [optional] Size of parts, can be an 0-based array of ints in the following format: $vPartWidth[0] - width part #1 $vPartWidth[1] - width of part #2 $vPartWidth[n] - width of part n |
Success: | True. |
Failure: | False. |
If an element is -1, the right edge of the corresponding part extends to the border of the window.
$vPartWidth is ignored if $vPartEdge is an Array.
$vPartEdge and $vPartWidth being both an Array is an error.
#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WindowsConstants.au3>
Global $g_idMemo
Example()
Func Example()
; Create GUI
Local $hGUI = GUICreate("StatusBar Get/Set Parts (v" & @AutoItVersion & ")", 400, 300)
Local $hStatus = _GUICtrlStatusBar_Create($hGUI)
; Create memo control
$g_idMemo = GUICtrlCreateEdit("", 2, 2, 396, 274, $WS_VSCROLL)
GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
GUISetState(@SW_SHOW)
; Set/Get parts
Local $aParts[3] = [75, 150, -1]
_GUICtrlStatusBar_SetParts($hStatus, $aParts)
;Set Text/ Get Width
Local $iParts = _GUICtrlStatusBar_GetCount($hStatus)
For $iI = 0 To $iParts - 1
_GUICtrlStatusBar_SetText($hStatus, "Text " & $iI, $iI)
MemoWrite("Part " & $iI & " width .: " & _GUICtrlStatusBar_GetWidth($hStatus, $iI))
Next
; Loop until the user exits.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example
; Write message to memo
Func MemoWrite($sMessage = "")
GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite