PureBasic

ComboBoxGadget()

Синтаксис

Result = ComboBoxGadget(#Gadget , x , y , Width , Height [, Flags])

Описание


Создаёт Гаджет 'Комбо-бокс' (ComboBox) в текущем списке Гаджетов (GadgetList).

Параметры

#Gadget Номер для идентификации нового Гаджета. В качестве этого параметра можно использовать значение #PB_Any, чтобы сгенерировать этот Номер автоматически.
x, y, Width, Height Позиция и размеры нового Гаджета.Примечание: в OS X высота ComboBox не может быть изменена, и этот параметр будет игнорироваться.
Flags (дополн.) Флаги, позволяющие изменить поведение Гаджета. Этот параметр может быть комбинацией (с помощью оператора '|') следующих констант:
  #PB_ComboBox_Editable  : Делает ComboBox доступным для редактирования.
  #PB_ComboBox_LowerCase : Весь текст, введенный в ComboBox, будет преобразован в нижний регистр.
  #PB_ComboBox_UpperCase : Весь текст, введенный в ComboBox, будет преобразован в верхний регистр.
  #PB_ComboBox_Image     : Включает поддержку изображений в элементах (не поддерживается для редактируемого ComboBox в OSX)

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

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

Комментарии

Вы можете добавить 'Всплывающую мини-подсказку' к этому Гаджету с помощью функции GadgetToolTip().

Для работы с содержимым списка могут использоваться следующие функции:

- AddGadgetItem(): Добавляет элемент. Поддерживает ImageID.
- GetGadgetItemText(): Возвращает текстовое содержимое (Имя) элемента Гаджета.
- CountGadgetItems(): Подсчитывает количество элементов в текущем ComboBox.
- ClearGadgetItems(): Удаляет все элементы.
- RemoveGadgetItem(): Удаляет указанный элемент.
- SetGadgetItemText(): Изменяет текст (имя) элемента Гаджета.
- SetGadgetItemImage(): Изменяет текущее изображение указанного элемента Гаджета (должен быть создан с флагом #PB_ComboBox_Image).
- GetGadgetState(): Возвращает индекс (начиная с 0) текущего выбранного элемента (-1 если элемент не добавлен, или не выбран).
- GetGadgetText(): Возвращает текстовое содержимое (Имя) текущего (выделенного) элемента указанного Гаджета.
- SetGadgetState(): Устанавливает для указанного элемента статус выбранного.
- SetGadgetText(): Устанавливает отображаемый текст. Если ComboBox не доступен для редактирования, текст должен быть в выпадающем списке.
- GetGadgetItemData(): Возвращает значение, которое было сохранено в указанном элементе.
- SetGadgetItemData(): Сохраняет заданное значение в указанном элементе Гаджета.

ComboBoxGadget() поддерживает следующие события, о которых сообщает EventType():
  #PB_EventType_Change   : Выделение текста в поле редактирования изменилось.
  #PB_EventType_Focus    : Поле редактирования получило фокус клавиатуры (только для ComboBox доступного для редактирования).
  #PB_EventType_LostFocus: Поле редактирования потеряло фокус клавиатуры (только для ComboBox доступного для редактирования).

Пример

UsePNGImageDecoder()
LoadImage(0, #PB_Compiler_Home + "examples/sources/Data/world.png")

If OpenWindow(0, 0, 0, 270, 180, "Гаджет Комбо-бокс", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    ComboBoxGadget(0, 10, 10, 250, 21, #PB_ComboBox_Editable)
    AddGadgetItem(0, -1, "Редактируемый ComboBox...")

    ComboBoxGadget(1, 10, 40, 250, 21, #PB_ComboBox_Image)
    AddGadgetItem(1, -1, "Элемент ComboBox с изображением", ImageID(0))

    ComboBoxGadget(2, 10, 70, 250, 21)
    For a = 1 To 5
        AddGadgetItem(2, -1, "Элемент ComboBox " + Str(a))
    Next

    SetGadgetState(0, 0)
    SetGadgetState(1, 0)
    SetGadgetState(2, 2) ; устанавливает (начиная с 0) третий элемент как активный

    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf


См. также

AddGadgetItem(), RemoveGadgetItem(), CountGadgetItems(), ClearGadgetItems(), GetGadgetState(), SetGadgetState(), GetGadgetText(), SetGadgetText() GetGadgetItemText(), SetGadgetItemText(), SetGadgetItemImage() GetGadgetItemData(), SetGadgetItemData(), ExplorerComboGadget()

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

Все

<- CloseGadgetList() - Оглавление Gadget - ContainerGadget()->