【问题标题】:eventFilter Function is stopping my Buttons to workeventFilter 功能正在停止我的按钮工作
【发布时间】:2021-11-24 06:24:13
【问题描述】:

这是我在 QWidget 主窗口上安装的 eventFilter。 按下右键可以移动我的窗口。但是我的窗口上有一些按钮在单击它们后停止工作并停留在选定阶段。删除此事件过滤器后,一切正常。
problem in buttons after eventFilter

def eventFilter(self, source, event):
        try:
            if (event.type() == QtCore.QEvent.MouseButtonPress and 
                event.button() == QtCore.Qt.RightButton):
                    self.startPos = event.pos()
                    return True
            elif event.type() == QtCore.QEvent.MouseMove and self.startPos is not None:
                self.move(self.pos() + event.pos() - self.startPos)
                return True
            elif event.type() == QtCore.QEvent.MouseButtonRelease:
                self.startPos = None
                return True
            
            return super(Ui_digiWidget, self).eventFilter(source, event)
        except Exception as e:print(e)

【问题讨论】:

标签: python events pyqt5 pyside2 eventfilter


【解决方案1】:

实践让我们变得更好。

变化

 elif event.type() == QtCore.QEvent.MouseButtonRelease :

elif (event.type() == QtCore.QEvent.MouseButtonRelease and 
                event.button() == QtCore.Qt.RightButton):

解决了我的问题。 谢谢大家。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-12
    • 2017-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多