Qt Creator - Добавить сочетания клавиш в пункты меню
Я создал ярлык событий, таких как:
new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_Q), this, SLOT(close()));
Но теперь я хотел бы показать "Ctrl+Q" в пункте меню здесь:
Как я могу это сделать? Кажется, я не нахожу способ сделать это в Qt Creator.
2 ответа
Вообще вы бы использовали QAction
класс для этого, так что у вас будет QMenu
к которому вы добавите действия, в вашем случае CLOSE
, Тогда вы можете использовать SetShortcut
добавить "CTRL + Q"
в меню.
pNewAction->setShortcut(QString(strAccel.c_str()));
где pNewAction
имеет тип QAction
,
Вы можете установить сочетания клавиш в QtDesigner в "Редакторе действий" (вкладка внизу, по умолчанию выбрана вкладка "Редактор сигналов / слотов").
Здесь перечислены все определенные QActions. Двойной щелчок по полю в столбце "ярлык" откроет нужный диалог.
Это добавит ярлык к QAction (создаст инициируемые события) и установит его в виде видимого текста, например, в пункте меню (отображается только в приложении, но не в QtDesigner).
В "Редакторе свойств" есть больше вариантов "горячих клавиш" (например, сделать их переводимыми).