我正在尝试在Pyside / PyQt4中设置没有修饰符的双键快捷键。
我尝试了QEvents和QKeySequences的各种组合,但无济于事。
我想做的是这样的事情:
def keyPressEvent(self,event): if(event.key()== QtCore.Qt.Key_O)和(event.key()== QtCore.Qt.Key_P): print('快捷方式接受')
或
fileMenu.addAction(QtGui.QAction("Open Project", self, shortcut=QtGui.QKeySequence("P" and "O"),triggered=self.openProject))
用户按下,然后按P,然后按P,然后执行操作。
有没有人首先知道这是否可行,如果可行,怎么做?
答案 0 :(得分:2)
对我来说"O, P"
作为QKeySequence
的参数来完成工作。
示例:
from PySide import QtGui
def beep():
print('beep')
app = QtGui.QApplication([])
toolbar = QtGui.QToolBar()
toolbar.show()
action = QtGui.QAction("Action", toolbar, shortcut=QtGui.QKeySequence("O, P"), triggered=beep)
toolbar.addAction(action)
app.exec_()