0

QMdiArea在主窗口中创建,然后我想右键单击 MDI 区域以获取弹出菜单。为此,我将以下代码放在主窗口的构造函数中。

this->ui->mdiArea->setContextMenuPolicy(Qt::CustomContextMenu);
connect(this->ui->mdiArea, SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(slotRtClickContextMenu(const QPoint&)))

ContextMenu 事件在我在 eventFilter 中检查时发生。

但是,当我单击 MDI 区域时没有任何响应。然后我this->ui->mdiArea用这个替换它,它运行良好并显示了弹出菜单。

有什么建议么?

4

1 回答 1

1

我遇到了类似的问题,但使用 QTreeWidget。然后将 QtreeWidget->setContextMenuPolicy 的值设置为 Qt::CustomContextMenu 解决了这个问题。你可以试试同样的。

于 2013-06-13T14:23:35.237 回答