Функция _GUICtrlStatusBar_GetTextLengthEx

 ↑  ←  Описание функции


_GUICtrlStatusBar_GetTextLengthEx

Возвращает флаг указанной части

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

Параметры

$hWnd Дескриптор элемента
$iPart Индекс части, отсчёт от 0

Возвращаемое значение

Возвращает тип операции рисования текста. Тип может быть одним из следующих значений:
        0 - текст рисуется с границами to appear lower than the plane of the window
        $SBT_NOBORDERS - текст рисуется без границ
        $SBT_OWNERDRAW - The text is drawn by the parent window
        $SBT_POPOUT - The text is drawn with a border to appear higher than the plane of the window
        $SBT_RTLREADING - The text will be displayed in the opposite direction to the text in the parent window

См. также

_GUICtrlStatusBar_GetTextFlags, _GUICtrlStatusBar_GetTextLength

Пример

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

$Debug_SB = False ; Проверяет ClassName передаваемый в функции. Установите True и используйте дескриптор от другого элемента, чтобы увидеть как это работает

Global $iMemo

_Main()

Func _Main()

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

    ; Создаёт GUI
    $hGUI = GUICreate("StatusBar - Получает длину текста (Ex)", 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, "Часть 1", 0, $SBT_POPOUT)
    _GUICtrlStatusBar_SetText ($hStatus, "Часть 2", 1, $SBT_NOBORDERS)
    _GUICtrlStatusBar_SetText ($hStatus, "Часть 3", 2, $SBT_NOTABPARSING)


    ; Получает информацию текста
    For $iI = 0 To _GUICtrlStatusBar_GetCount ($hStatus) - 1
        MemoWrite("Часть " & $iI & " флаги текста: " & _GUICtrlStatusBar_GetTextFlags ($hStatus, $iI))
        MemoWrite("Часть " & $iI & " длина текста: " & _GUICtrlStatusBar_GetTextLength ($hStatus, $iI))
        MemoWrite("Часть " & $iI & " длина текста: 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