QTreeWidget右键菜单

void MainWindow::on_treeWidget_customContextMenuRequested(const QPoint &pos)
{
    QModelIndex index=ui->treeWidget->indexAt(pos);
    if (index == QModelIndex())
    {
        return;
    }

    QTreeWidgetItem *curItem = ui->treeWidget->currentItem();
    if (curItem == NULL)
    {
        return;
    }
    /*
    *
    */
}

右键空白的地方,可能返回默认的第一行,用item有时也可以,有时就不行。具体来说就是不在treeWidget任何项上右键,在treeWidget里面空白的地方右键,此时可以判断出来,但是鼠标移出程序界面,比如在操作系统的任务栏点一下,再进入程序,右键空白,返回了第一行。

需要判断QModelIndex ,和Qt的模型/视图有关,很好用。

你可能感兴趣的:(Qt)