在 QTreeWidget 中双击某个 item 时,可以通过重载它的 doubleClicked
信号来实现相应的操作。
例如,我们可以在双击一个 item 后输出它的文本内容:
connect(treeWidget, SIGNAL(itemDoubleClicked(QTreeWidgetItem*, int)), this, SLOT(onItemDoubleClicked(QTreeWidgetItem*, int)));
void MyWidget::onItemDoubleClicked(QTreeWidgetItem* item, int column)
{
qDebug() << "Double clicked item: " << item->text(column);
}
上述代码中,我们将 itemDoubleClicked
信号与 onItemDoubleClicked
槽函数连接起来。每当双击一个 item 时,就会触发 itemDoubleClicked
信号,并自动传递该 item 和其所在列的信息给槽函数。槽函数根据传入的参数获取到该 item 的文本内容,并输出到控制台中。
需要注意的是,在 QTreeWidget 中,每个 item 可能包含多个列(即子项),因此 itemDoubleClicked
信号还会传递一个 column
参数表示当前双击的列数。如果只需要处理某一特定列的双击事件,可以在连接信号和槽函数时指定对应的列数作为第三个参数。