Функция _GUICtrlStatusBar_SetText

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


_GUICtrlStatusBar_SetText

Устанавливает текст в указанную часть строки состояния

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

Параметры

$hWnd Дескриптор элемента
$sText Текст, отображаемый в части
$iPart Часть, в которую устанавливается текст
$iUFlag Тип операции рисования. Тип может быть одним из следующих значений:
    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

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

Успех:Возвращает True
Ошибка:Возвращает False

Примечания

Set $iPart to $SB_SIMPLEID for simple statusbar

См. также

_GUICtrlStatusBar_GetText

Пример

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

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

Global $iMemo

Example1()
Example2()

Func Example1()

    Local $hGUI, $hIcons[2], $hStatus
    Local $aParts[4] = [80, 160, 300, 400]

    ; Создаёт GUI
    $hGUI = GUICreate("(Пример 1) Устанавливает текст", 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, "Часть 1")
    _GUICtrlStatusBar_SetText ($hStatus, "Часть 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("Часть 1 текст ..............: " & _GUICtrlStatusBar_GetText ($hStatus, 0))
    MemoWrite("Часть 2 текст ..............: " & _GUICtrlStatusBar_GetText ($hStatus, 1))

    ; Показывает дескриптор иконки
    MemoWrite("Дескриптор иконки 1-ой части: 0x" & Hex(_GUICtrlStatusBar_GetIcon ($hStatus, 0)))
    MemoWrite("Дескриптор иконки 2-ой части: 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] = [80, 160, 300, 400]

    ; Создаёт GUI
    $hGUI = GUICreate("(Пример 2) Устанавливает текст", 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, "Часть 1")
    _GUICtrlStatusBar_SetText ($hStatus, "Часть 2", 1)

    ; Устанавливает иконки
    _GUICtrlStatusBar_SetIcon ($hStatus, 0, 23, "shell32.dll")
    _GUICtrlStatusBar_SetIcon ($hStatus, 1, 40, "shell32.dll")

    ; Показывает текст части
    MemoWrite("Часть 1 текст ..............: " & _GUICtrlStatusBar_GetText ($hStatus, 0))
    MemoWrite("Часть 2 текст ..............: " & _GUICtrlStatusBar_GetText ($hStatus, 1))

    ; Показывает дескриптор иконки
    MemoWrite("Дескриптор иконки 1-ой части: 0x" & Hex(_GUICtrlStatusBar_GetIcon ($hStatus, 0)))
    MemoWrite("Дескриптор иконки 2-ой части: 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