我正在Linux上構建Qt應用程序。我在主窗口中有一個菜單欄,裏面有兩個菜單,每個菜單都有幾個動作,所有動作都有鍵盤快捷鍵與它們相關聯。鍵盤快捷方式在菜單未打開時工作,但當其中一個菜單打開時,它們都不起作用。C++ Qt菜單中沒有通過鍵盤快捷鍵觸發的菜單中的操作
使用[menuobject] - > addAction將操作添加到它們各自的菜單之前,將快捷方式添加到setShortcut的操作中。所有操作都以主窗口爲父窗口。在閱讀QAction shortcut doesnt always work之後,我添加了對addAction的調用,將操作添加到主窗口。這並沒有解決問題。對於菜單項的代碼
例子:
//In the main window constructor
gameQuit = new QAction(QString(tr("&Quit\tCtrl+Q")), this);
gameQuit->setShortcut(QKeySequence(Qt::Key_Q | Qt::CTRL));
addAction(gameQuit);
connect(gameQuit, SIGNAL(triggered()), this, SLOT(close()));
gameMenu = menuBar()->addMenu(QString(tr("&Game")));
gameMenu->addAction(gameQuit);
在QtCreator,我假設使用Qt編寫,對於菜單項的快捷鍵時,菜單是開放做的工作,所以我認爲一定有辦法。
感謝您的任何幫助。
爲什麼這個downvoted? – rsood
我的猜測是這是因爲你沒有提供一個簡單的例子。在StackOverflow上,大多數問題需要一個小代碼示例來顯示問題,其他人可以嘗試。 – drescherjm
@drescherjm嗯......沒有看到在前置指南。我將銘記未來。謝謝。 – rsood