AC
Alexandru CodreanuАқп. 5, 2020, 12:23 Т.Ж.
QTableView и добавление иконки в строку.
Доброго времени суток.
Есть форма на которой присутствует tableView - выводится список документов.
Хочу реализовать в tableView вывод иконки в зависимости от состояния документа (записан, проведен).
model = new QSqlQueryModel; qry = new QSqlQuery(db->getDB()); if (db->getDB().open()){ qry->prepare("SELECT docExamen.id," "docExamen.post," "substr(docExamen.date, 9, 2) ||'.'|| substr(docExamen.date, 6, 2) ||'.'|| substr(docExamen.date, 0, 5) ||' '|| substr(docExamen.date, 11) as Date," "docExamen.number," "pacients.name ||' '|| pacients.fName ||' '|| pacients.mName||' '|| substr(pacients.birthday, 9, 2) ||'.'|| substr(pacients.birthday, 6, 2) ||'.'|| substr(pacients.birthday, 1, 4) as NamePacient," "docExamen.ticket," "users.name as Autor," "docExamen.comment FROM docExamen " "INNER JOIN pacients ON docExamen.id_pacients = pacients.id " "INNER JOIN users ON docExamen.id_users = users.id;"); if (qry->exec()){ //**************************************** /* ... реализовать добавление иконки ... */ QList<QStandardItem *> items; while (qry->next()) { if (qry->value(1).toInt() == 1){ // doc->post items.append(new QStandardItem(QIcon(":rec/img/doc_post_x32.png"), qry->value(1).toString())); } else { // doc->write items.append(new QStandardItem(QIcon(":rec/img/doc_write_x32.png"), qry->value(1).toString())); } } /* ... реализовать добавление иконки ... */ //**************************************** model->setQuery(*qry); ui->tableView->setModel(model); } else { qDebug() << "Solicitarea nereusita !!!" << endl << "Eroarea: " + qry->lastError().text(); } } //decorarea tabelului ui->tableView->hideColumn(0); ui->tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents); ui->tableView->horizontalHeader()->setStretchLastSection(true); ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows);
Вопросы:
1.Как правильно реализовать вывод иконки.
2.Заглядывая на будущее сортировка по столбцам (насколько я понимаю использовать QSortFilterProxyModel, но как из QSqlQueryModel в QSortFilterProxyModel)
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!
Пікірлер
AD
- Akiv Doros
- Қар. 11, 2024, 2:58 Т.Қ.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:50ұпай,
- Бағалау ұпайлары-4
m
- molni99
- Қаз. 26, 2024, 1:37 Т.Ж.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:80ұпай,
- Бағалау ұпайлары4
m
- molni99
- Қаз. 26, 2024, 1:29 Т.Ж.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:20ұпай,
- Бағалау ұпайлары-10
Соңғы пікірлер
ИМ
Django - Оқулық 017. Теңшелген Django кіру беті Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Игорь МаксимовҚар. 22, 2024, 11:51 Т.Ж.
Evgenii LegotckoiҚаз. 31, 2024, 2:37 Т.Қ.
Qt Creator көмегімен fb3 файл оқу құралы Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Django - Сабақ 064. Python Markdown кеңейтімін қалай жазуға болады Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
Игорь МаксимовҚаз. 5, 2024, 7:51 Т.Ж.
QML - Сабақ 016. SQLite деректер қоры және онымен QML Qt-та жұмыс істеу Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Енді форумда талқылаңыз
Mosquito Spray System Effective Mosquito Systems for Backyard | Eco-Friendly Misting Control Device & Repellent Spray - Moogo ; Upgrade your backyard with our mosquito-repellent device! Our misters conce…
Evgenii LegotckoiМаусым 24, 2024, 3:11 Т.Қ.
t
google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
tonypeachey1Қар. 15, 2024, 6:04 Т.Ж.
NSProjectМаусым 4, 2022, 3:49 Т.Ж.
IscanderCheҚаз. 31, 2024, 3:43 Т.Қ.
Добрый день, уважаемый Shuric.
Вот похожий пример для Вас Пример . Вам нужно использовать делегаты, я так понимаю.
Я бы помог Вам еще больше, но к сожалению сам только учусь этому.
Добрый день. Спасибо за наведение примера, но для меня не подходит.
Делегат необходим (насколько я понимаю) для редактирования в модели, а мне необходимо было переопределить методы представления модели QSqlQueryModel
Для кого интересно решил следующим образом:
- проблема в колонки post переопределить метод представления
basesqlquerymodel.h
basesqlquerymodel.cpp
В listdocexamen.cpp реализовал:
В результате вышло следующее:
Правда иконки не очень, но главное результат.
Сейчас, понимаю что изначально был задан вопрос не корректно. Приношу свои извинения.
Доброго времени суток.
По поводу второго вопроса - сортировка по столбцам.
Реализовал следующим образом:
listdocexamen.cpp
Возникла проблема с сортировкой по столбцу Date . Понял что проблема в запросе, изменил на
сортировка отрабатывается отлично,
но как привести значение yyyy-MM-dd HH-MM-ss в dd-MM-yyy hh-mm-ss ?
basesqlquerymodel.cpp