crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Вставка записей в базу через 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  


Цитата(DenisKh001 @ 17.6.2011, 2:31) *
Есть 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.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 15.1.2025, 17:07