【问题标题】:Two shortcuts for one action一个操作的两个快捷方式
【发布时间】:2014-04-30 12:58:21
【问题描述】:

我需要两个快捷方式来执行一项操作。

Ctrl+1 or ctrl+s

有没有办法做到这一点? 或者我必须创建该操作的副本,然后为该操作分配第二个快捷方式?

【问题讨论】:

  • 你看QAction::setShortcuts(const QList<QKeySequence> & shortcuts)了吗?
  • 请写下这个作为答案。我正在使用 qt 设计器,并且只使用了 setShortcut 方法。所以我必须为此编写一个包装器。

标签: qt pyqt


【解决方案1】:

为了在一个动作上安装多个快捷方式,您可以使用QAction::setShortcuts(const QList<QKeySequence> & shortcuts) 函数。例如:

QList<QKeySequence> shortcuts;
shortcuts << QKeySequence("Ctrl+1") << QKeySequence("Ctrl+S");
action->setShortcuts(shortcuts);

【讨论】:

  • 一行代码:action->setShortcuts( QList()
  • 或者更好的单行代码action-&gt;setShortcuts({ tr("Ctrl+1"), tr("Ctrl+S") });
  • 有没有办法在 Qt Designer 中完成或编辑 ui 文件?
  • @MartinDelille,是的。在 Designer 上选择一个菜单操作,在属性编辑器中找到“快捷方式”属性并设置按键顺序。
  • @vahancho 它适用于单个快捷方式,但不适用于两个。
猜你喜欢
  • 1970-01-01
  • 2012-04-28
  • 1970-01-01
  • 1970-01-01
  • 2013-07-28
  • 1970-01-01
  • 2016-08-28
  • 2021-02-03
  • 1970-01-01
相关资源
最近更新 更多