qt treeview点击事件
时间: 2023-08-27 21:06:49 浏览: 478
qt中的treeView的右击事件和双击事件
在 Qt 中,要实现 TreeView 的点击事件,可以使用 QTreeView 的信号 clicked 和 doubleClicked。
例如,以下代码演示了如何在 TreeView 中捕获单击事件并输出所选节点的文本:
```cpp
connect(treeView, &QTreeView::clicked, [=](const QModelIndex &index) {
QStandardItemModel *model = qobject_cast<QStandardItemModel *>(treeView->model());
QStandardItem *item = model->itemFromIndex(index);
qDebug() << "Clicked: " << item->text();
});
```
类似地,以下代码演示了如何在 TreeView 中捕获双击事件并输出所选节点的文本:
```cpp
connect(treeView, &QTreeView::doubleClicked, [=](const QModelIndex &index) {
QStandardItemModel *model = qobject_cast<QStandardItemModel *>(treeView->model());
QStandardItem *item = model->itemFromIndex(index);
qDebug() << "Double clicked: " << item->text();
});
```
注意:在使用 clicked 和 doubleClicked 信号时,需要将 QTreeView 的选择模式设置为 SingleSelection,否则可能会出现不符合预期的行为。
阅读全文