Qt: табличка в QComboBox
Запись от icpu размещена 28.09.2015 в 14:00
Показов 9665
Комментарии 2
Метки >:3, qcombobox, qt, qtableview, для начинающих
|
Появилась задача впихнуть таблицу в QComboBox так, чтобы можно было выбирать данные из любого столбца таблицы. Задача простая, но на сей момент готового рабочего решения в инернете не было найдено, только обрывки. Исправляем. Краткий экскурс. QComboBox - очень гибкий элемент управления. В качестве выпадающего меню он использует виджет отображения QAbstractItemView (по умолчанию QListView), а для хранения данных QAbstractItemModel (по умолчанию QStandardItemModel). Как несложно догадаться, их можно менять на обсолютно любые модели и отображения. Но есть одно НО: По умолчанию QComboBox работает только с одним столбцом модели. Тем не менее, это можно побороть. Решение. Как обычно, просто и изящно. Показываю на примере QTableView и QSqlQueryModel. нам понадобится:
Qt::DisplayRole, и по Qt::EditRole, причём, значения в combobox будут вставляться из роли Qt::EditRole.UPD2: Архив с готовым проектом. untitled06_combo.rar Результат: Вот так с помощью | ||||||||||
Метки >:3, qcombobox, qt, qtableview, для начинающих
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 2
Комментарии


