у меня есть QTableView
который работает правильно, показывая мою модель в графическом интерфейсе. Тем не менее, я хотел бы создать «сигнал / слот», который работает, когда я выбираю строку из QTableView
,
Как я могу это сделать?
Вы можете сделать это следующим образом:
connect(ui->tableView->selectionModel(), SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
SLOT(slotSelectionChange(const QItemSelection &, const QItemSelection &))
);
И слот будет:
void MainWindow::slotSelectionChange(const QItemSelection &, const QItemSelection &)
{
QModelIndexList selection = ui->tableView->selectionModel()->selectedRows();//Here you are getting the indexes of the selected rows
//Now you can create your code using this information
}
Я надеюсь это тебе поможет.
Использовать currentRowChanged(const QModelIndex & current, const QModelIndex & previous)
сигнал от модели выбора (документы).
Смотрите документацию QAbstractItemView https://qt-project.org/doc/qt-4.7/qabstractitemview.html
void QAbstractItemView активированный (const QModelIndex &индекс) [сигнал]
Этот сигнал испускается при активации элемента, указанного индексом
пользователем. Как активировать предметы зависит от платформы; например,
один или два раза щелкнув по элементу, или нажав клавишу Return или
Введите ключ, когда элемент является текущим.
И используйте QModelIndex :: row ()