PureBasic

GetGadgetItemState()

Синтаксис

Result = GetGadgetItemState(#Gadget , Item)

Описание


Возвращает состояние элемента указанного Гаджета.

Параметры

#Gadget Номер идентифицирующий указанный Гаджет.
Item Элемент, состояние которого требуется получить. Первый элемент Гаджета имеет индекс 0.

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

Возвращает состояние элемента указанного Гаджета, или ноль в случае ошибки. Ниже Вы можете увидеть описание возвращаемого значения, которое зависит от типа Гаджета.

Комментарии

Это универсальная функция, и она работает практически для всех Гаджетов, которые поддерживают более одного элемента:

- CalendarGadget(): Возвращает #PB_Calendar_Bold, когда указанная дата отображается полужирным шрифтом, в противном случае #PB_Calendar_Normal. Параметр 'Item' должен быть значением в формате Даты PureBasic.

- ExplorerListGadget(): возвращает комбинацию следующих значений
  #PB_Explorer_File      : Элемент файл.
  #PB_Explorer_Directory : Элемент каталог (или диск).
  #PB_Explorer_Selected  : Элемент выбран в данный момент (не обязательно видно визуально).
- ListViewGadget(): Возвращает 1, если элемент является выделенным, и 0 в противном случае.

- ListIconGadget(): возвращает комбинацию следующих значений:
  #PB_ListIcon_Selected : Элемент выбран.
  #PB_ListIcon_Checked  : Чекбокс (Флажок) элемента отмечен (флаг #PB_ListIcon_CheckBoxes).
  #PB_ListIcon_Inbetween: Чекбокс (Флажок) элемента находится в "промежуточном" состоянии (флаг #PB_ListIcon_ThreeState).
- TreeGadget(): возвращает комбинацию следующих значений:
  #PB_Tree_Selected : Элемент выделен, в противном случае 0.
  #PB_Tree_Expanded : Элемент развёрнут (ветвь дерева открыта).
  #PB_Tree_Collapsed: Элемент свёрнут (ветвь дерева закрыта).
  #PB_Tree_Checked  : Чекбокс (Флажок) элемента отмечен (флаг #PB_Tree_CheckBoxes).
  #PB_Tree_Inbetween: Чекбокс (Флажок) элемента находится в "промежуточном" состоянии (флаг #PB_Tree_ThreeState).
Проверяются эти состояния следующим образом:

If Result & #PB_Tree_Checked
    ; Элемент отмечен
EndIf

Пример

Ниже приведен пример, который Вы можете использовать с функцией ListIconGadget(), он показывает - как вы можете проверить сочетание нескольких значений:

; ... кусок кода из цикла обработки событий после WaitWindowEvent():
If GetGadgetItemState(#Listicon, n) & #PB_ListIcon_Checked
    ; Элемент n отмечен (не важно, выбран или нет)
EndIf

If GetGadgetItemState(#Listicon, n) & #PB_ListIcon_Selected
    ; Элемент n выбран (не важно, отмечен или нет)
EndIf

If GetGadgetItemState(#Listicon, n) = #PB_ListIcon_Checked | #PB_ListIcon_Selected
    ; Элемент n отмечен И выбран
EndIf

If GetGadgetItemState(#Listicon, n) & (#PB_ListIcon_Checked | #PB_ListIcon_Selected)
    ; Элемент n отмечен ИЛИ выбран, ИЛИ то и другое
EndIf

См. также

SetGadgetItemState(), GetGadgetState(), SetGadgetState()

Поддерживаемые OS

Все

<- GetGadgetItemData() - Оглавление Gadget - GetGadgetItemText()->