我有一个继承 QTreeWidget 的类。如何找到当前选定的行?通常我以这种方式将信号连接到插槽:
connect(myButton, SIGNAL(triggered(bool)), this, SLOT(myClick()));
但是,我找不到类似的东西QTreeWidget->QTreeWidgetItem
。我发现的唯一方法是重新定义 QTreeWidget 类的 mousePressEvent ,如下所示:
void MyQTreeWidget::mousePressEvent(QMouseEvent *e){
QTreeView::mousePressEvent(e);
const QModelIndex index = indexAt(e->pos());
if (!index.isValid())
{
const Qt::KeyboardModifiers modifiers = QApplication::keyboardModifiers();
if (!(modifiers & Qt::ShiftModifier) && !(modifiers & Qt::ControlModifier))
clearSelection();
}
}
我还没试过。是唯一的解决方案还是有更简单的方法?