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