два qtableview, две модели и одни и те же данные - PullRequest
0 голосов
/ 17 мая 2019

У меня есть

  • вектор A
  • два QTableModel: a и b
  • и два QTableView: c и d

a - модель c, b - модель d

две модели представляют одни и те же данные (A) двумя различными способами.Проблема в том, что, когда я редактирую данные с моделью a, из представления b;Представление d не изменяло данные (не «обновляет представление»), пока я не щелкну по нему (когда оно установит фокус).Я испускаю dataChanged в каждой функции setData в a и b.Наконец, я пытаюсь подключить сигналы данных:

QObject::connect(a, SIGNAL(dataChanged(QModelIndex,QModelIndex)), b, SIGNAL(dataChanged(QModelIndex,QModelIndex)));

Это не решает проблему.

1 Ответ

0 голосов
/ 17 мая 2019

QTableModel dataChanged определяется как сигнал, а не слот, поэтому вы не можете подключить сигнал к сигналу ....

, следовательно, это недействительно

QObject::connect(a, SIGNAL(dataChanged(QModelIndex,QModelIndex)), b, SIGNAL(dataChanged(QModelIndex,QModelIndex)));

и не собирается работать

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