0

メイン ウィンドウで作成QMdiAreaした後、MDI 領域を右クリックしてポップアップ メニューを表示します。これを行うために、メイン ウィンドウのコンストラクターに次のコードを配置しました。

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

eventFilter で確認したところ、ContextMenu イベントが発生しました。

しかし、MDI エリアをクリックしても何の反応もありません。次に、これに置き換えましthis->ui->mdiAreaた。うまく機能し、ポップアップメニューが表示されました。

助言がありますか?

4

1 に答える 1

1

同様の問題がありましたが、QTreeWidget で QtreeWidget->setContextMenuPolicy の値を Qt::CustomContextMenu に設定すると問題が解決しました。同じことを試すことができます。

于 2013-06-13T14:23:35.237 に答える