Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Разработка баз данных _ Использование CheckBox в QSqlQueryModel+QtableView

Автор: alt 1.12.2009, 16:20

Здравствуйте. Требуется при отображении в табличной форме данных из базы данных в один столбец добавить чекбоксы, чтобы можно было отмечать отдельные строки. А затем определить какие строки были отмечены и отoбразить эти строки в отдельном окне. Как это можно реализовать? Заранее спасибо.

Автор: CrashSp 3.7.2010, 9:11

Хм...вот как раз такая же делема подскажите с помощью чего реализовать?? пробывал в QSqlQueryModel устоновить роль чекбокса,они устанавливались но не мог изменить их состояние,так же пробывал делегатом так же не мог изменить состояние,кода под рукой нет.Пжл подскажите в какую сторону рыть.Благодарю.

Автор: Litkevich Yuriy 3.7.2010, 12:09

Цитата(Гость_CrashSp_* @ 3.7.2010, 13:11) *
QSqlQueryModel устоновить роль чекбокса,они устанавливались но не мог изменить их состояние
QSqlQueryModel - модель только для чтения, это написано в самом начале описания этого класса.

Цитата(alt @ 1.12.2009, 20:20) *
Как это можно реализовать?
сделать свою модель, которая будет содержать дополнительный столбец. Модель можно унаследовать от QSqlQueryModel только нужно будет для столбца с флажками переопределить функцию
Qt::ItemFlags flags(const QModelIndex &index) const;
чтобы для столбца с флажками она возвращала Qt::ItemIsEnabled.
ну и setData разумеется, чтобы можно было в модели сохранить новое состояние флажка
тем самым реализуется редактирование флажков.

Далее читаешь их модели заданный столбец и смотришь его значение.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)