Qt Creator — Добавить сочетания клавиш в пункты меню

Я создал ярлык событий, таких как:

new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_Q), this, SLOT(close()));

Но теперь я хотел бы показать «Ctrl + Q» в пункте меню здесь:

Выход

Как я могу это сделать? Кажется, я не нахожу способ сделать это в Qt Creator.

0

Решение

Вообще вы бы использовали QAction класс для этого, так что у вас будет QMenu к которому вы добавите действия, в вашем случае CLOSE, Тогда вы можете использовать SetShortcut добавить "CTRL + Q" в меню.

pNewAction->setShortcut(QString(strAccel.c_str()));

где pNewAction имеет тип QAction,

1

Другие решения

Вы можете установить сочетания клавиш в QtDesigner в «Редакторе действий» (вкладка внизу, по умолчанию выбрана вкладка «Редактор сигналов / слотов»).

Здесь перечислены все определенные QActions. Двойной щелчок по полю в столбце «ярлык» откроет нужный диалог.

Это добавит ярлык в QAction (создаёт инициируемые события) и установит его как видимый текст, например в пункте меню (отображается только в приложении, но не в QtDesigner).

В «Редакторе свойств» есть больше вариантов «горячих клавиш» (например, сделать их переводимыми).

Добавить ярлыки для QActions в редакторе действий

2

По вопросам рекламы [email protected]