QTableView selectionChanged - PullRequest
       11

QTableView selectionChanged

12 голосов
/ 04 марта 2010

У меня есть QTableView, из которого мне нужно получить событие selectionChanged. Я не могу заставить работать соединение. У меня есть:

MyWidget.h

...

protected slots:
 void slotLoadTransaction(const QItemSelection & selected, const QItemSelection & deselected);
private:
 QTableView table;

...

MyWidget.cpp

...

 connect(
  table->selectionModel(),
  SIGNAL(selectionChanged(const QItemSelection & selected, const QItemSelection & deselected)),
  this,
  SLOT(slotLoadTransaction(const QItemSelection & selected, const QItemSelection & deselected))
 );

...

Во время выполнения я получаю сообщение об ошибке «Нет такого сигнала».

1 Ответ

16 голосов
/ 04 марта 2010

Вам необходимо удалить имена переменных из макросов SIGNAL и SLOT:

 connect(
  table->selectionModel(),
  SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
  SLOT(slotLoadTransaction(const QItemSelection &, const QItemSelection &))
 );

Connect по сути просматривает сигнатуру функции, а имена переменных ее путают.

...