Function Reference

_GUICtrlStatusBar_GetTextLengthEx

パーツのuFlagを取得します。

#Include <GuiStatusBar.au3>
_GUICtrlStatusBar_GetTextLengthEx($hwnd, $iPart)

 

パラメータ

$hWnd コントロールのハンドル
$iPart ゼロ始まりのパーツインデックス

 

返し値

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

 

注意

なし。

 

関連

_GUICtrlStatusBar_GetTextFlags, _GUICtrlStatusBar_GetTextLength

 


#include <GuiConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>

Opt('MustDeclareVars', 1)

$Debug_SB = False ; 関数に渡されるClassNameを調べる。動作を確認するにはTrueを設定し、他のコントロールのハンドルを使用

Global $iMemo

_Main()

Func _Main()

    Global $hGUI, $iMemo, $iI, $hStatus
    Global $aParts[3] = [75, 150, -1]

    ; GUIを作成
    $hGUI = GUICreate("StatusBar Get Text LengthEx", 400, 300)
    $hStatus = _GUICtrlStatusBar_Create ($hGUI, $SBT_NOBORDERS)

    ; メモコントロールを作成
    $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", 0, $SBT_POPOUT)
    _GUICtrlStatusBar_SetText ($hStatus, "Part 2", 1, $SBT_NOBORDERS)
    _GUICtrlStatusBar_SetText ($hStatus, "Part 3", 2, $SBT_NOTABPARSING)


    ; テキスト情報を取得
    For $iI = 0 To _GUICtrlStatusBar_GetCount ($hStatus) - 1
        MemoWrite("Part " & $iI & " text flags .: " & _GUICtrlStatusBar_GetTextFlags ($hStatus, $iI))
        MemoWrite("Part " & $iI & " text length : " & _GUICtrlStatusBar_GetTextLength ($hStatus, $iI))
        MemoWrite("Part " & $iI & " text length : 0x" & Hex(_GUICtrlStatusBar_GetTextLengthEx ($hStatus, $iI)))
        MemoWrite()
    Next

    ; ユーザーが終了するまでループ
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main

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