Название: Добавление и удаление строк из TableView. Отправлено: diagnosefiz от Июнь 01, 2017, 11:43 Удаляю строку из QTableView с помощью запроса для бд postgres, но она не удаляется из таблицы. О том что она удалилась, мы узнаем только по следующему открытию талицы. Как сделать обновление вида таблицы по нажатию кнопки "'Delete"? Слот на нажатие клавиши "Delete":
Код: void DialogNewColumn::on_pushButton_2_clicked() Название: Re: Добавление и удаление строк из TableView. Отправлено: gil9red от Июнь 01, 2017, 12:08 А какая модель у таблицы?
Название: Re: Добавление и удаление строк из TableView. Отправлено: diagnosefiz от Июнь 01, 2017, 12:14 А какая модель у таблицы? QStandardItemModelНазвание: Re: Добавление и удаление строк из TableView. Отправлено: gil9red от Июнь 01, 2017, 12:46 Понятно, а открытие таблицы это новое заполнение QStandardItemModel из запроса к базе? Если данных мало, то можно после удаления у модели вручную удалить. Из ui->tableView->currentIndex() можно узнать индекс столбца
Я спрашивал про модель, потому что есть специальные модели для работы с базами, например QSqlTableModel (http://doc.qt.io/qt-5/qsqltablemodel.html) Название: Re: Добавление и удаление строк из TableView. Отправлено: diagnosefiz от Июнь 01, 2017, 13:04 Понятно, а открытие таблицы это новое заполнение QStandardItemModel из запроса к базе? Если данных мало, то можно после удаления у модели вручную удалить. Из ui->tableView->currentIndex() можно узнать индекс столбца Это мой первый проект и почти все запросы реализованы на перегрузке модели. Т.е. каждый новый запрос - это перезагрузка всей модели.((понимаю, что криво сделано. Есть ли способ догружать данные в существующую модель? Я спрашивал про модель, потому что есть специальные модели для работы с базами, например QSqlTableModel (http://doc.qt.io/qt-5/qsqltablemodel.html) Название: Re: Добавление и удаление строк из TableView. Отправлено: gil9red от Июнь 01, 2017, 13:16 Есть ли способ догружать данные в существующую модель? Конечно, работайте с QStandardItemModel. Добавляете в модель новые данные, она сообщит таблице о них и таблица обновится Название: Re: Добавление и удаление строк из TableView. Отправлено: diagnosefiz от Июнь 01, 2017, 13:44 (http://cdn1.savepice.ru/uploads/2017/6/1/b1ad3615ab806379e434fb5a88733ba2-full.png)
Есть ли способ догружать данные в существующую модель? Конечно, работайте с QStandardItemModel. Добавляете в модель новые данные, она сообщит таблице о них и таблица обновится Название: Re: Добавление и удаление строк из TableView. Отправлено: diagnosefiz от Июнь 01, 2017, 14:27 Понятно, а открытие таблицы это новое заполнение QStandardItemModel из запроса к базе? Если данных мало, то можно после удаления у модели вручную удалить. Из ui->tableView->currentIndex() можно узнать индекс столбца Я спрашивал про модель, потому что есть специальные модели для работы с базами, например QSqlTableModel (http://doc.qt.io/qt-5/qsqltablemodel.html) Код: QModelIndex string = ui->tableView->currentIndex().row(); Название: Re: Добавление и удаление строк из TableView. Отправлено: gil9red от Июнь 01, 2017, 14:33 Тогда уж:
Код
Название: Re: Добавление и удаление строк из TableView. Отправлено: diagnosefiz от Июнь 01, 2017, 14:35 Тогда уж: Спасибо большое) получилось. Код
|