![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
DenisKh001 |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 7 Регистрация: 16.6.2011 Пользователь №: 2752 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Есть QTableview и соединенная с ней QSqlTableModel - все работает, все обновляется. А как удалить запись из модели? Скажем пользователь выделяет строчку и нажимает Del (обычно же так делается). Т.е. надо отловить какой-то сигнал на удаление строчки из QTableview, есть вообще такой?
|
|
|
![]() |
maint |
![]()
Сообщение
#2
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
Есть QTableview и соединенная с ней QSqlTableModel - все работает, все обновляется. А как удалить запись из модели? Скажем пользователь выделяет строчку и нажимает Del (обычно же так делается). Т.е. надо отловить какой-то сигнал на удаление строчки из QTableview, есть вообще такой? Так делается необычно. НО можно. Надо ловить нажатие клавищи по keyPressEvent. Дальше узнаем в QTableView текущую позицию с помощью table->currentIndex() и удаляем model->removeRow. Для фиксации результата model->submitAll(); |
|
|
Litkevich Yuriy |
![]()
Сообщение
#3
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Нужно создать действие (QAction) и назначить ему кнопку (Delete)
Установить это действие для таблицы (QTableView). Связать сигнал активации действия с самописанным слотом окна (в котором находится твоя таблица). В слоте нужно сделать как написал maint. |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 8.6.2025, 5:44 |