C++QTableview表头获取点击项 的QModelIndex
时间: 2024-10-15 17:09:55 浏览: 50
QTableWidget QTableView 自定义复杂表头(多行表头,表头合并) 、冻结、固定特定的行
3星 · 编辑精心推荐
在C++的Qt中,当你需要在`QTableView`表头的单元格上获取用户的点击事件,你可以通过监听`QHeaderView`的`sectionClicked()`信号。这个信号会在用户单击表头的某一节时发送,同时会传递一个`QModelIndex`作为参数,该索引表示用户点击的是哪一列。
例如,你可以这样做:
```cpp
QTableView *tableView = new QTableView(parent);
QHeaderView *header = tableView->horizontalHeader();
// 连接信号槽
connect(header, &QHeaderView::sectionClicked, this, [header](const QModelIndex &index) {
// index就是用户点击的那一列的索引
int columnIndex = index.column();
qDebug() << "Column clicked: " << columnIndex;
});
```
在这个槽函数中,`columnIndex`将存储所点击列的索引,你可以进一步根据这个索引来操作数据或做出相应的响应。
阅读全文