| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [qt] возможности qml |
| Автор: NoNo 10.1.2014, 20:54 |
| Добрый вечер!!! Интересует следующий вопрос. Возможно ли на qt сделать какую-нибудь серьезную прогу с интерфейсом qml, чтобы она отображала qsqltablemodel qsqlquerymodel и т.д. и насколько это разумно???? |
| Автор: vinter 11.1.2014, 08:34 |
| Это возможно и разумно. |
| Автор: NoNo 11.1.2014, 09:45 |
| Хорошо, как тогда можно перетащить в qml qsqltablemodel или qsqlquerymodel????? я в нете нашел только как можно работать с listmodel. |
| Автор: vinter 11.1.2014, 11:06 |
| Нужно просто адаптировать эти модели к тем, что возможны в QML. ВОт можешь посмотреть http://qt-project.org/wiki/How_to_use_a_QSqlQueryModel_in_QML и http://qt-project.org/wiki/QML_and_QSqlTableModel. QML просто требует определённой структуры от моделей, которые используют базовые View. Если же отойти от этого, то можно пихать модель любого типа, но View придётся делать свой. В общем, с этим делом надо разбираться, тут наскоком дело не решается. |
| Автор: NoNo 12.1.2014, 18:17 |
| Спасибо. А вообще для десктопа следует использовать qml??? Я просто читал на одном из форумов, что QT потихоньку отказывается от widget-ов. |
| Автор: vinter 12.1.2014, 20:36 |
| использовать или нет решать тебе, но ты читал правду. Декларативный путь описания UI превалирует сейчас. |
| Автор: NoNo 14.1.2014, 00:58 | ||
Спасибо...буду осваивать qml (уже начал))) глядишь и разберусь) |
| Автор: NoNo 25.1.2014, 20:08 | ||
Согласно данным примерам необходимо задать роли в модели, но в классе QSqlQueryModel нет метода setRoleNames(), и данные примеры не работают. Как можно сделать иначе???? у меня Qt5.2 |
| Автор: vinter 26.1.2014, 08:42 |
| QSqlQueryModel является потомком QAbstractItemModel, а значит setRoleNames() метод там должен быть, другое дело, что он помечен как obsolete и рекомендуется использовать другой подход: просто переопределить метод roleNames(). Это всё есть в документации. |
| Автор: NoNo 26.1.2014, 16:14 | ||
Спасибо. Вроде разобрался. |