gpt4 book ai didi

c++ - QT QTreeView 在特定列上的点击事件

转载 作者:行者123 更新时间:2023-11-30 05:24:22 26 4
gpt4 key购买 nike

我有一个简短的问题。我想根据单击的列拦截具有不同行为的 TreeView 上的单击事件。我相信有一个信号通过模型索引......但是如何识别列?感谢您的帮助。

最佳答案

检查 QTreeView 中使用的 QItemSelectionModel 以处理行或列中的选择或单击事件。使您的 TreeView 可选择并使用默认信号之一。您有 3 种不同的信号来处理点击事件:

void    currentChanged(const QModelIndex &current, const QModelIndex &previous)
void currentColumnChanged(const QModelIndex &current, const QModelIndex &previous)
void currentRowChanged(const QModelIndex &current, const QModelIndex &previous)

使用自定义插槽处理信号,并使用 QModelIndex 参数获取当前行和索引。示例:

void MainWindow::elementClicked(const QModelIndex& current, const QModelIndex& previous) {
const int row = current.row();
const int column = current.column();
qDebug() << "Clicked at " << row << column;
}

关于c++ - QT QTreeView 在特定列上的点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38689428/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com