2013-08-30 251 views
3

我正在嘗試使用QShortcut來設置鍵盤快捷鍵,僅用於某個窗口小部件關注時。特定窗口小部件的PyQt/PySide鍵盤快捷鍵

我認爲通過設置父母,這將工作。例如:

QtGui.QShortcut(QtGui.QKeySequence("Ctrl+Return"), self.myWidget, self.doSomething) 

但是,當按下Ctrl + Return時會觸發此操作。我知道我可以通過繼承QWidget並覆蓋setShortcut來實現這一點,但這看起來有點矯枉過正?

有沒有更簡單的方法?

(答案可在C++)

補充:

我認爲這是可以使用QShortcutContexthttp://pyqt.sourceforge.net/Docs/PyQt4/qshortcut.html

QtGui.QShortcut(QtGui.QKeySequence("Ctrl+Return"), self.myWidget, self.doSomething, context=QtCore.Qt.WidgetShortcut) 

也不行來完成。

回答

0

這是由於PyQt中的一個錯誤,升級到4.10.3已經解決了這個問題,並且意味着我可以使用快捷方式獲得所需的結果。