Функция GUICtrlRead

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


GUICtrlRead

Возвращает состояние или текст элемента управления.

GUICtrlRead ( controlID [, advanced = 0 ] )

Параметры

controlID Идентификатор элемента управления, возвращаемый функциями GUICtrlCreate....
advanced [необязательный] Возвращает расширенную информацию элемента управления.
0 = (по умолчанию) Возвращает значение состояния или данные элемента управления.
1 = Возвращает расширенную информацию элемента управления.

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

Успех:Возвращает в зависимости от типа элемента управления (смотрите ниже).
Ошибка:Возвращает 0.

ЭлементВозвращаемое значение при флаге advanced = 0
ButtonТекст, отображаемый на кнопке
Checkbox, RadioСостояние элемента. Смотрите таблицу состояния элементов
Combo, ListТекст выбранного пункта
DummyВеличина установленная с помощью GUICtrlSendToDummy() или GUICtrlSetData()
Input, EditТекст, содержащийся в элементе
DateВыбранную дату в формате определяемом региональными настройками
ListViewИдентификатор выбранного пункта в ListView. Или 0, если ничего не выбрано.
ListViewItemТекст выбранного пункта / строки в ListView. Или 0, если ничего не выбрано.
Menu, MenuItemСостояние пункта. Смотрите таблицу состояния элементов
ProgressТекущий процент прогресса
SliderТекущее значение ползунка
TabНомер вкладки, отсчёт от 0.
TreeViewИдентификатор выбранного пункта в TreeView.
TreeViewItemСостояние указанного пункта.

Для некоторых элементов доступно возвращение дополнительного значения, при установке параметра advanced равным 1
ЭлементВозвращаемое значение при флаге advanced = 1
Checkbox, RadioТекст, отображаемый на элементе.
ListViewItemСостояние пункта, если используется стиль $LVS_EX_CHECKBOXES. Смотрите таблицу состояния элементов
Menu, MenuItemТекст, отображаемый на пункте.
TabИдентификатор выбранной вкладки.
TreeViewТекст выбранного пункта в TreeView.
TreeViewItemТекст указанного пункта.

Примечания

Для элементов Checkbox, Radio устанавливается несколько состояний и могут возвращаться $GUI_CHECKED и $GUI_UNCHECKED. Для Checkbox ещё третье состояние $GUI_INDETERMINATE.
Используйте BitAND(GUICtrlRead($Item),$GUI_CHECKED) для проверки установленной галочки.

Для пунктов элемента ListView устанавливается несколько состояний и могут возвращаться $GUI_CHECKED и $GUI_UNCHECKED (только для ListView со стилем $LVS_EX_CHECKBOXES и включенным расширенным параметром).
Используйте BitAND(GUICtrlRead($Item),$GUI_CHECKED) для проверки установленной галочки.

Для пунктов элементов Treeview устанавливается несколько состояний и могут возвращаться $GUI_FOCUS, $GUI_EXPAND и $GUI_CHECKED, $GUI_UNCHECKED (только для treeview со стилем $TVS_CHECKBOXES).
Используйте BitAND(GUICtrlRead($Item),$GUI_CHECKED) для проверки установленной галочки.

См. также

GUICtrlUpdate..., GUIGetMsg, GUICtrlSetData, GUIEventOptions (Опция), GUICtrlCreate..., GUICtrlGetState, GUICtrlSendToDummy, GUICtrlSendMsg

Пример

#include <GUIConstantsEx.au3>

Example()

Func Example()
    Local $iMenu, $iList, $iBtnRead, $msg, $iMenuState, $sMenuText, $hGui

    $hGui = GUICreate("GUICtrlRead") ; Создаёт окно в центре экрана

    $iMenu = GUICtrlCreateMenu("Файл")

    $iList = GUICtrlCreateList("", 10, 10, -1, 100)
    GUICtrlSetData(-1, "Пункт1|Пункт2|Пункт3", "Пункт2")

    $iBtnRead = GUICtrlCreateButton("Чтение", 140, 110, 70)
    GUICtrlSetState(-1, $GUI_FOCUS) ; устанавливает фокус на кнопку

    GUISetState() ; показывает созданное окно
    ; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
    Do
        $msg = GUIGetMsg()
        If $msg = $iBtnRead Then
            MsgBox(0, "Выбранный пункт ListBox", GUICtrlRead($iList), 0, $hGui) ; Отображает выбранный пункт ListBox
            $iMenuState = GUICtrlRead($iMenu) ; возвращает состояние пункта меню
            $sMenuText = GUICtrlRead($iMenu, 1) ; возвращает текст пункта меню
            MsgBox(0, "Состояние и текст пункта меню", "состояние: " & $iMenuState & @LF & "текст меню: " & $sMenuText, 0, $hGui)
        EndIf
    Until $msg = $GUI_EVENT_CLOSE
EndFunc