我正在尝试使用QShortcut来设置键盘快捷键,仅适用于特定小部件聚焦时。
我认为通过设置父级,这可行。例如:
QtGui.QShortcut(QtGui.QKeySequence("Ctrl+Return"), self.myWidget, self.doSomething)
但是,按下Ctrl + Return时会触发此操作。我知道我可以通过继承QWidget
并覆盖setShortcut
来做到这一点,但这看起来有点过分了吗?
有更简单的方法吗?
(答案可以是C ++)
添加:
我认为可以使用QShortcutContext
http://pyqt.sourceforge.net/Docs/PyQt4/qshortcut.html但
QtGui.QShortcut(QtGui.QKeySequence("Ctrl+Return"), self.myWidget, self.doSomething, context=QtCore.Qt.WidgetShortcut)
也不起作用。
答案 0 :(得分:0)
这是由于PyQt中的一个错误,升级到4.10.3已经解决了问题,这意味着我可以使用快捷方式上下文来获得所需的结果。