Spec-Zone.ru › Qt 5.6

Тип QML ComboBox

Элемент управления выпадающим списком. Подробнее...

Заявление импорта: import Qt.labs.controls 1.0
Наследует:

Control

  • Список всех членов, включая унаследованные

Свойства

  • count : int
  • currentIndex : int
  • currentText : string
  • delegate : Component
  • displayText : string
  • highlightedIndex : int
  • model : model
  • popup : Popup
  • pressed : bool
  • textRole : string

Сигналы

  • void activated(int index)
  • void highlighted(int index)

Методы

  • int find(string text, flags)
  • string textAt(int index)

Подробное описание

ComboBox — это сочетание кнопки и выпадающего списка. Он предоставляет способ отображения списков вариантов пользователю, занимая минимальное место на экране.

ComboBox заполняется с помощью модели данных. Модель данных обычно представляет собой массив JavaScript, ListModel или целое число, но также поддерживаются и другие типы моделей данных.

ComboBox {
    model: ["First", "Second", "Third"]
}

ComboBox может визуализировать стандартные модели данных, которые предоставляют modelData роль:

  • модели, которые имеют только одну роль
  • модели, которые не имеют именованных ролей (массив JavaScript, целое число)

При использовании моделей, имеющих несколько именованных ролей, ComboBox должен быть настроен для использования определённой роли текста для его текста отображения и экземпляров делегата.

ComboBox {
    textRole: "key"
    model: ListModel {
        ListElement { key: "First"; value: 123 }
        ListElement { key: "Second"; value: 456 }
        ListElement { key: "Third"; value: 789 }
    }
}

Примечание: Если ComboBox получает модель данных, имеющую несколько именованных ролей, но textRole не определена, ComboBox не может её визуализировать и генерирует ReferenceError: modelData is not defined.

Примечание: Типы в модуле Qt.labs не гарантируют совместимости в будущих версиях.

См. также Настройка ComboBox и Элементы управления вводом.

Документация свойств

[только для чтения] count : int

Это свойство содержит количество элементов в выпадающем списке.

currentIndex : int

Это свойство содержит индекс текущего элемента в выпадающем списке.

См. также activated() и currentText.

[только для чтения] currentText : string

Это свойство содержит текст текущего элемента в выпадающем списке.

См. также currentIndex, displayText и textRole.

delegate : Component

Это свойство содержит делегат, отображающий элемент в выпадающем списке.

См. также ItemDelegate и Настройка ComboBox.

displayText : string

Это свойство содержит текст, отображаемый на кнопке выпадающего списка.

По умолчанию, текст отображения представляет текущий выбор. То есть, он следует тексту текущего элемента. Однако, значение отображения по умолчанию можно переопределить пользовательским значением.

ComboBox {
    currentIndex: 1
    displayText: "Size: " + currentText
    model: ["S", "M", "L"]
}

См. также currentText и textRole.

[только для чтения] highlightedIndex : int

Это свойство содержит индекс выделенного элемента в списке выпадающего списка.

См. также highlighted() и currentIndex.

model : model

Это свойство содержит модель, предоставляющую данные для выпадающего списка.

ComboBox {
    textRole: "key"
    model: ListModel {
        ListElement { key: "First"; value: 123 }
        ListElement { key: "Second"; value: 456 }
        ListElement { key: "Third"; value: 789 }
    }
}

См. также textRole и Модели данных.

popup : Popup

Это свойство содержит выпадающий список.

См. также Настройка ComboBox.

pressed : bool

Это свойство указывает, нажата ли кнопка выпадающего списка.

textRole : string

Это свойство содержит роль модели, используемую для заполнения выпадающего списка.

См. также model, currentText и displayText.

Документация сигналов

void activated(int index)

Этот сигнал испускается, когда пользователь активирует элемент с индексом index.

См. также currentIndex.

void highlighted(int index)

Этот сигнал испускается, когда пользователь выделяет элемент с индексом index в списке выпадающего списка.

См. также highlightedIndex.

Документация методов

int find(string text, flags = Qt.MatchExactly)

Возвращает индекс указанного текста или -1 , если совпадение не найдено.

Способ выполнения поиска определяется заданными флагами flags. По умолчанию выпадающий список выполняет чувствительный к регистру точный поиск (Qt.MatchExactly). Все остальные типы поиска нечувствительны к регистру, если также не указан флаг Qt.MatchCaseSensitive.

Константа Описание
Qt.MatchExactly Критерий поиска точно соответствует (по умолчанию).
Qt.MatchRegExp Критерий поиска соответствует регулярному выражению.
Qt.MatchWildcard Критерий поиска соответствует маске с подстановкой.
Qt.MatchFixedString Критерий поиска соответствует строке.
Qt.MatchStartsWith Критерий поиска соответствует началу элемента.
Qt.MatchEndsWidth Критерий поиска соответствует концу элемента.
Qt.MatchContains Критерий поиска содержится в элементе.
Qt.MatchCaseSensitive Поиск чувствителен к регистру.

См. также textRole.

string textAt(int index)

Возвращает текст для указанного индекса или пустую строку, если индекс находится за пределами границ.

См. также textRole.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qml-qt-labs-controls-combobox.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API