Function Reference

_GUICtrlStatusBar_SetText

ステータスウィンドウの指定されたパーツのテキストを設定します。

#Include <GuiStatusBar.au3>
_GUICtrlStatusBar_SetText($hWnd, $sText = "", $iPart = 0, $iUFlag = 0)

 

パラメータ

$hWnd コントロールのハンドル
$sText パーツに表示されるテキスト
$iPart テキストを保持するパーツ
$iUFlag 描画操作の種類。次の値のいずれかです:
0 - テキストはウィンドウ平面よりも低く見える境界と共に描画されます
$SBT_NOBORDERS - テキストは境界なしに描画されます
$SBT_OWNERDRAW - テキストは親ウィンドウによって描画されます
$SBT_POPOUT - テキストはウィンドウ平面よりも高く見える境界と共に描画されます
$SBT_RTLREADING - テキストは親ウィンドウのテキストとは逆向きに表示されます

 

返し値

成功: True
失敗: False

 

注意

シンプルステータスバーでは$iPartに$SB_SIMPLEIDを設定してください。

 

関連

_GUICtrlStatusBar_GetText

 


#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 Text", 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 text ........: " & _GUICtrlStatusBar_GetText ($hStatus, 0))
    MemoWrite("Part 2 text ........: " & _GUICtrlStatusBar_GetText ($hStatus, 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 Text", 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 text ........: " & _GUICtrlStatusBar_GetText ($hStatus, 0))
    MemoWrite("Part 2 text ........: " & _GUICtrlStatusBar_GetText ($hStatus, 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
    GUIDelete()
EndFunc   ;==>Example2

; メモ帳にメッセージを書き込む
Func MemoWrite($sMessage = "")
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite