Qt需要单击两次以在项目之间切换上下文菜单

时间:2014-06-26 18:41:29

标签: qt contextmenu

我开发树视图并为其项目实现上下文菜单。右键单击一个项目,弹出其上下文菜单。右键单击其他项目,旧的上下文菜单消失,但新菜单不会出现。需要另一次右键单击才能显示新的上下文菜单。在这种情况下,任何方式进行右键单击都可以吗?我生成上下文菜单的代码如下

void MyTreeView::contextMenuEvent(QContextMenuEvent* event) override
{
    if (Item* item = itemAt(event->pos())) {
        unique_ptr<QMenu> menu(item->createMenu(this));
        if (menu && !menu->isEmpty())
            menu->exec(event->globalPos());
    }
}

0 个答案:

没有答案