Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 单击+;QSystemTrayIcon上的移位_Python_Qt_Pyqt_Pyside_Qt4.8 - Fatal编程技术网

Python 单击+;QSystemTrayIcon上的移位

Python 单击+;QSystemTrayIcon上的移位,python,qt,pyqt,pyside,qt4.8,Python,Qt,Pyqt,Pyside,Qt4.8,我怎么处理⇧ 移位(或⌘ 指挥与⌥ 选项)+单击QSystemTrayIcon上的 我已经尝试过的: app = MyApp(sys.argv) class MyApp(QApplication): self.trayIcon = QSystemTrayIcon(self) self.trayIcon.activated.connect(self.trayIconActivated) ... def trayIconActivated(self): pr

我怎么处理⇧ 移位(或⌘ 指挥与⌥ 选项)+
单击
QSystemTrayIcon
上的

我已经尝试过的:

app = MyApp(sys.argv)

class MyApp(QApplication):
    self.trayIcon = QSystemTrayIcon(self)
    self.trayIcon.activated.connect(self.trayIconActivated)
...
    def trayIconActivated(self):
        print "ACTIVATED", app.keyboardModifiers()
...
始终打印(无论是否按下按钮):

始终打印:

<KeyboardModifiers object at 0x1002ad4b0> 
False

假的

版本:

PySide 1.1.2
Qt 4.8.4


您需要使用例如
app.keyboardModifiers()&Qt.ShiftModifier

app.keyboardModifiers()&QtCore.Qt.ShiftModifier()&QtCore.Qt.ShiftModifier==QtCore.Qt.ShiftModifier
测试特定修饰符的标志,app.keyboardModifiers()&QtCore.Qt.ShiftModifier==QtCore.Qt.ShiftModifier
始终返回

def trayIconActivated(self):
    print app.keyboardModifiers() & QtCore.Qt.ShiftModifier
    print app.keyboardModifiers() & QtCore.Qt.ShiftModifier == QtCore.Qt.ShiftModifier
<KeyboardModifiers object at 0x1002ad4b0> 
False