函数参考


_GUICtrlStatusBar_GetTextLength

检索部件文本长度

#Include <GuiStatusBar.au3>
_GUICtrlStatusBar_GetTextLength($hWnd, $iPart)

参数

$hWnd 控件句柄
$iPart 部件 0 基索引

返回值

返回指定部件文本长度

注意/说明

None.

相关

_GUICtrlStatusBar_GetTextLengthEx, _GUICtrlStatusBar_GetTextFlags

示例/演示


#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WindowsConstants.au3>

$Debug_SB = False ; 检查传递给函数的类名, 设置为True并输出到一个控件的句柄,用于检查它是否工作

Global $iMemo

_Main()

Func _Main()

    Local $hGUI, $hStatus
    Local $aParts[3] = [75, 150, -1]

    ; 创建 GUI
    $hGUI = GUICreate("StatusBar Get Text Length", 400, 300)
    $hStatus = _GUICtrlStatusBar_Create($hGUI)

    ; 创建 memo 控件
    $iMemo = GUICtrlCreateEdit("", 2, 2, 396, 274, $WS_VSCROLL)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; Set parts
    _GUICtrlStatusBar_SetParts($hStatus, $aParts)
    _GUICtrlStatusBar_SetText($hStatus, "Part 1")
    _GUICtrlStatusBar_SetText($hStatus, "Part 2", 1)

    ; Get text information
    For $iI = 0 To _GUICtrlStatusBar_GetCount($hStatus) - 1
        MemoWrite("Part " & $iI & " text flags .: 0x" & Hex(_GUICtrlStatusBar_GetTextFlags($hStatus, $iI)))
        MemoWrite("Part " & $iI & " text length : " & _GUICtrlStatusBar_GetTextLength($hStatus, $iI))
        MemoWrite()
    Next

    ; 循环直到用户退出
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main

; 写入消息到 memo
Func MemoWrite($sMessage = "")
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite