Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.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 如何检查PyQt6中的MouseButtonPress事件?_Python_Pyqt_Pyqt6 - Fatal编程技术网

Python 如何检查PyQt6中的MouseButtonPress事件?

Python 如何检查PyQt6中的MouseButtonPress事件?,python,pyqt,pyqt6,Python,Pyqt,Pyqt6,在PyQt5中,我们可以使用QEvent类验证事件发生,例如QEvent.MouseButtonPress。在PyQt6中,该语句不再有效。我检查了PyQt6.QtCore.QEvent和PyQt6.QtGui.QMouseEvent类的成员,似乎无法找到包含MouseButtonPress事件值的正确枚举类 PyQt5示例我正在尝试转换为PyQt6 导入系统 从PyQt5.QtWidgets导入QApplication,QWidget 从PyQt5.QtCore导入QEvent,Qt 类App

在PyQt5中,我们可以使用QEvent类验证事件发生,例如QEvent.MouseButtonPress。在PyQt6中,该语句不再有效。我检查了
PyQt6.QtCore.QEvent
PyQt6.QtGui.QMouseEvent
类的成员,似乎无法找到包含MouseButtonPress事件值的正确枚举类

PyQt5示例我正在尝试转换为PyQt6

导入系统 从PyQt5.QtWidgets导入QApplication,QWidget 从PyQt5.QtCore导入QEvent,Qt 类AppDemo(QWidget): 定义初始化(自): super()。\uuuu init\uuuuu() 自我调整大小(800400) self.installEventFilter(self) def事件过滤器(自身、QObject、事件): 如果event.type()==QEvent.MouseButtonPress:#> PyQt6.QtCore.QEvent的成员 “类型”的“类型”,以及“类型”的“类型”,以及“类型”的“UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU,“类型”的“类型”的“类型”,以及“类型”的“UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU类类类类类类类类类类,”UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU,”,”,”,”,”路路路路路路路路路路路路路路路路路路路路路路路,,”,”,”,”,”,”,”,”,”,”,”","模块","新","减少","减少","减少"前","报告","设置属性","大小","str__“,”接受“,”克隆“,”忽略“,”isAccepted“,”isInputEvent“,”IsPointEvent“,”isSinglePointEvent“,”registerEventType“,”设置接受“,”自发“,”类型“] -------------------------------------------------- PyQt6.QtCore.QMouseEvent的成员 “类型”的“类型”,以及“类型”的“类型”,以及“类型”的“UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU,“类型”的“类型”的“类型”,以及“类型”的“UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU类类类类类类类类类类,”UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU,”,”,”,”,”路路路路路路路路路路路路路路路路路路路路路路路,,”,”,”,”,”,”,”,”,”,”,”","模块","新","减少","减少","减少"前","报告","设置属性","大小","str__“,”接受“,”所有点接受“,”按钮“,”按钮“,”克隆“,”设备“,”设备类型“,”exclusivePointGrabber“,”全局位置“,”忽略“,”isAccepted“,”isBeginEvent“,”isEndEvent“,”isInputEvent“,”IsPointEvent“,”isUpdateEvent“,”修饰符“,”点“,”pointById“,”点计数“,”pointerType“,”pointingDevice“,”点”,'position','registerEventType','scenePosition','setAccepted','setExclusivePointGrabber','自发性','timestamp','type']
PyQt6枚举使用python枚举的主要更改之一,因此您必须使用枚举名称作为中介,在您的情况下,MouseButtonPress属于类型enum,RightButton属于MouseButtons,因此您必须将其更改为:

def eventFilter(self, QObject, event):
    if event.type() == QEvent.Type.MouseButtonPress:
        if event.button() == Qt.MouseButtons.RightButton:
            print("Right button clicked")

    return True
def eventFilter(self、QObject、event):
如果event.type()==QEvent.type.mousebutton按下:
如果event.button()==Qt.MouseButtons.RightButton:
打印(“单击右键”)

return True
如果我打印QEvent的成员,则所有这些都可用。”“接受”、“克隆”、“忽略”、“isAccepted”、“isInputEvent”、“isPointerEvent”、“isSinglePointEvent”PS:在post.Oh中添加了其他详细信息。真不敢相信我错过了。非常感谢你。