我有一个QTableView
工作正常,在 GUI 上显示我的模型。但是,我想创建一个“SIGNAL/SLOT”,当我从QTableView
.
我怎样才能做到这一点?
我有一个QTableView
工作正常,在 GUI 上显示我的模型。但是,我想创建一个“SIGNAL/SLOT”,当我从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
}
我希望这可以帮助你。
请参阅文档 QAbstractItemView https://qt-project.org/doc/qt-4.7/qabstractitemview.html
无效 QAbstractItemView 已激活(const QModelIndex &index ) [信号]
当用户激活 index 指定的项目时,会发出此信号。如何激活物品取决于平台;例如,通过单击或双击项目,或在项目为当前时按 Return 或 Enter 键。
并使用 QModelIndex::row()
使用currentRowChanged(const QModelIndex & current, const QModelIndex & previous)
来自选择模型 ( docs ) 的信号。