Как определить, когда элемент изменен в табличном представлении?

У меня есть это табличное представление, в котором я пишу некоторые данные в разных столбцах. Я добавляю данные, записывая их в текстовые поля и нажимая кнопку «добавить». И я изменяю его, выбирая строку в табличном представлении, копируя данные в текстовые поля, редактируя их и нажимая кнопку «сохранить».

Данные из текстовых полей, помимо отправки в табличное представление, также используются для других расчетов в моем приложении.

Я хотел бы иметь возможность изменять данные непосредственно в представлении таблицы, а затем отправлять измененные данные для выполнения необходимых мне расчетов в другом классе - в моем случае.

На данный момент я могу изменить данные в представлении таблицы, но как я могу отправить сигнал о том, что данные были изменены в представлении?

Любые идеи?


person schmimona    schedule 14.08.2011    source источник


Ответы (1)


Модификация данных обрабатывается моделью в структуре Qt Model/View.

Чтобы делать то, что вы хотите, получите дескриптор модели TableView (через ее элемент model()) и подключите слот к dataChanged.

Этот сигнал испускается всякий раз, когда данные в существующем элементе изменяются.

(Есть другой сигнал, если вы хотите реагировать на изменения заголовков столбцов или строк.)

person Mat    schedule 16.08.2011