изменения данных в QTableView и установка setWindowModified(true); |
Здравствуйте, гость ( Вход | Регистрация )
изменения данных в QTableView и установка setWindowModified(true); |
rrmini |
3.2.2010, 11:28
Сообщение
#1
|
Студент Группа: Участник Сообщений: 41 Регистрация: 23.11.2009 Пользователь №: 1251 Спасибо сказали: 0 раз(а) Репутация: 0 |
Имеется связка model - view:
CODE QSqlTableModel *model = new QSqlTableModel(0); model->setEditStrategy(QSqlTableModel::OnManualSubmit); ..... QTableView *view = new QTableView(0); view-> setModel(model); view-> setWindowTitle(trUtf8("Таблица[*]")); view-> setWindowModified(false); .... Задача: 1. При изменении пользователем данных в ячейках( одной ячейки) таблицы или при добавлении(удалении) строки установить view->setWindowModified(true); 2. После сохранения изменений if(model->submitAll()) view->setWindowModified(false); Я так понимаю при уловии задачи 1 должен генериться какой-то сигнал. который можно отловить? |
|
|
Litkevich Yuriy |
3.2.2010, 12:03
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Я так понимаю при уловии задачи 1 должен генериться какой-то сигнал. который можно отловить? Да, если стратегия OnManualSubmit, то можно использовать сигнал модели dataChangedНапример:
view->setWindowModified(true) только вот это не понятно, ты хочешь представление сделать окном верхнего уровня? Тогда тебе прийдётся его удалять вручную либо устанавливать атрибут Qt::WA_DeleteOnClose
|
|
|
Текстовая версия | Сейчас: 22.1.2025, 10:48 |