QMenuBarにはQMenusがあります。例えば、QMenuのカスタムNon Altショートカット
QMenu* menu = myMainWindow->menubar()->addMenu(tr("Settings"));
は今、私はアンパサンドを追加する場合、「&設定」と言う、私はALT + Sを使用して、このメニューを開くことができることを知っています。しかし、私のアプリケーションでは、カスタムキーの使用が必要です。さらに、私のアプリケーションでは、 "alt"キーも持っていません。カスタムキーのように、Qt :: Keyで未使用の場所(具体的には未知のキーとみなされる場所)をとり、イベント用に使用します。これは正常に正常に動作します。実際、このようなものは通常動作します:
int val = keyEvent->key();
if (key == MyCustomKeyEnum::CustomKey)
// do stuff
しかし、カスタムのintキーショートカットを持つようにメニューを設定するにはどうすればよいですか?あるいは、同等の方法として、プログラム上でメニューバーからメニューを開くにはどうすればよいですか? MyCustomKeyEnum :: CustomKeyからカスタムスロットにイベントを簡単に接続できます。だから、おそらく私は潜在的に最初の場所でショートカットカスタムキーを避けることができますか?
私はtargetMenu.exec()を使用しようとしましたが、矢印キーを使用して隣接するメニューに移動し、正しい位置にメニューを生成できるようにしたいので、これは良い選択肢ではありませんでした。