Sets the icon for a part
#include <GuiStatusBar.au3>
_GUICtrlStatusBar_SetIcon ( $hWnd, $iPart [, $hIcon = -1 [, $sIconFile = ""]] )
$hWnd | Handle to the control |
$iPart | 0-based part index. If the control is in simple mode, this field is ignored. |
$hIcon | [optional] Handle to the icon. If this value is -1, the icon is removed. |
$sIconFile | [optional] Icon filename to be used. |
Success: | True. |
Failure: | False. |
#include <GUIConstantsEx.au3> #include <GuiStatusBar.au3> #include <WinAPIIcons.au3> #include <WindowsConstants.au3> Global $g_idMemo Example() Func Example() ; Create GUI Local $hGUI = GUICreate("StatusBar Get/Set Icon (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 parts Local $aParts[4] = [75, 150, 300, 400] _GUICtrlStatusBar_SetParts($hStatus, $aParts) _GUICtrlStatusBar_SetText($hStatus, "Part 1") _GUICtrlStatusBar_SetText($hStatus, "Part 2", 1) ; Set icons Local $ahIcons[2] $ahIcons[0] = _WinAPI_LoadShell32Icon(23) $ahIcons[1] = _WinAPI_LoadShell32Icon(40) _GUICtrlStatusBar_SetIcon($hStatus, 0, $ahIcons[0]) _GUICtrlStatusBar_SetIcon($hStatus, 1, $ahIcons[1]) ; Show icon handles MemoWrite("Part 0 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 0))) MemoWrite("IsPtr = " & IsPtr(_GUICtrlStatusBar_GetIcon($hStatus, 0)) & " IsHWnd = " & IsHWnd(_GUICtrlStatusBar_GetIcon($hStatus, 0))) MemoWrite("Part 1 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 1))) ; Loop until the user exits. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE ; Free icons _WinAPI_DestroyIcon($ahIcons[0]) _WinAPI_DestroyIcon($ahIcons[1]) GUIDelete() EndFunc ;==>Example ; Write message to memo Func MemoWrite($sMessage = "") GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1) EndFunc ;==>MemoWrite
#include <GUIConstantsEx.au3> #include <GuiStatusBar.au3> #include <WindowsConstants.au3> Global $g_idMemo Example() Func Example() ; Create GUI Local $hGUI = GUICreate("StatusBar Get/Set Icon (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 parts Local $aParts[4] = [75, 150, 300, 400] _GUICtrlStatusBar_SetParts($hStatus, $aParts) _GUICtrlStatusBar_SetText($hStatus, "Part 0") _GUICtrlStatusBar_SetText($hStatus, "Part 1", 1) ; Set icons _GUICtrlStatusBar_SetIcon($hStatus, 0, 23, "shell32.dll") _GUICtrlStatusBar_SetIcon($hStatus, 1, 40, "shell32.dll") ; Show icon handles MemoWrite("Part 0 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 0))) MemoWrite("Part 1 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon($hStatus, 1))) ; 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