我需要为QAbstractButton分配两个快捷方式,但我找不到办法。

似乎唯一的方法是QAbstractButton :: setShortcut(const QKeySequence& key)。

有可能吗?

有帮助吗?

解决方案

QAbstractButton只接受一个快捷方式序列。尝试在QtDesigner中给出快捷方式,比如Alt + A& Alt + Z,您将看到必须执行Alt + A AND Alt + Z才能执行快捷方式。所以你无法实现你想要的2个快捷方式。

但有一个解决方案:

所有 QObject 都有一个名为 事件的函数 接收所有事件。您可以创建自己的类,该类继承自您的类按钮( QPushButton 等,或者直接来自 QAbstractButton ,如果您想拥有一个个性化按钮),其中包含 QShortcutSequence (如果你只需要2个快捷键,则为一对)并重新实现 event 函数来跟踪 QShortcutEvent 。不要忘记释放由父母班级处理的所有其他事件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top