パーツのアイコンを設定します。
#Include <GuiStatusBar.au3>
_GUICtrlStatusBar_SetIcon($hWnd, $iPart[, $hIcon = -1[, $sIconFile = ""]])
パラメータ
$hWnd | コントロールのハンドル |
$iPart | ゼロ始まりのパーツインデックス。コントロールがシンプルモードの場合、この値は無視されます。 |
$hIcon | [オプション]アイコンのハンドル。この値が-1の場合、アイコンは削除されます。 |
$sIconFile | [オプション] 使用されるアイコンのファイル名 |
返し値
成功: | True |
失敗: | False |
注意
なし。
関連
_GUICtrlStatusBar_GetIcon
例
#include <GuiConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
$Debug_SB = False ; 関数に渡されるClassNameを調べる。動作を確認するにはTrueを設定し、他のコントロールのハンドルを使用
Global $iMemo
Example1()
Example2()
Func Example1()
Local $hGUI, $hIcons[2], $hStatus
Local $aParts[4] = [75, 150, 300, 400]
; GUIを作成
$hGUI = GUICreate("(Example 1) StatusBar Set Icon", 400, 300)
$hStatus = _GUICtrlStatusBar_Create ($hGUI)
; メモコントロールを作成
$iMemo = GUICtrlCreateEdit("", 2, 2, 396, 274, $WS_VSCROLL)
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
GUISetState()
; パーツを設定
_GUICtrlStatusBar_SetParts ($hStatus, $aParts)
_GUICtrlStatusBar_SetText ($hStatus, "Part 1")
_GUICtrlStatusBar_SetText ($hStatus, "Part 2", 1)
; アイコンを設定
$hIcons[0] = _WinAPI_LoadShell32Icon (23)
$hIcons[1] = _WinAPI_LoadShell32Icon (40)
_GUICtrlStatusBar_SetIcon ($hStatus, 0, $hIcons[0])
_GUICtrlStatusBar_SetIcon ($hStatus, 1, $hIcons[1])
; アイコンハンドルを表示
MemoWrite("Part 1 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon ($hStatus, 0)))
MemoWrite("Part 2 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon ($hStatus, 1)))
; ユーザーが終了するまでループ
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; アイコンを解放
_WinAPI_DestroyIcon ($hIcons[0])
_WinAPI_DestroyIcon ($hIcons[1])
GUIDelete()
EndFunc ;==>Example1
Func Example2()
Local $hGUI, $hStatus
Local $aParts[4] = [75, 150, 300, 400]
; GUIを作成
$hGUI = GUICreate("(Example 2) StatusBar Set Icon", 400, 300)
$hStatus = _GUICtrlStatusBar_Create ($hGUI)
; メモコントロールを作成
$iMemo = GUICtrlCreateEdit("", 2, 2, 396, 274, $WS_VSCROLL)
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
GUISetState()
; パーツを設定
_GUICtrlStatusBar_SetParts ($hStatus, $aParts)
_GUICtrlStatusBar_SetText ($hStatus, "Part 1")
_GUICtrlStatusBar_SetText ($hStatus, "Part 2", 1)
; アイコンを設定
_GUICtrlStatusBar_SetIcon ($hStatus, 0, 23, "shell32.dll")
_GUICtrlStatusBar_SetIcon ($hStatus, 1, 40, "shell32.dll")
; アイコンハンドルを表示
MemoWrite("Part 1 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon ($hStatus, 0)))
MemoWrite("Part 2 icon handle .: 0x" & Hex(_GUICtrlStatusBar_GetIcon ($hStatus, 1)))
; ユーザーが終了するまでループ
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example2
; メモ帳にメッセージを書き込む
Func MemoWrite($sMessage = "")
GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite