如何在PyQt5中捕获悬停和鼠标离开信号

发布于 2021-01-29 14:56:14

QPushButton有一个名为的信号clicked(),我们可以通过它捕获点击事件。是否有捕获悬停和离开事件的方法或信号?

如何捕获鼠标悬停按钮和鼠标离开按钮,如下所示:

button = QPushButton(window)
button.clicked.connect(afunction)

注意:我使用python3。

关注者
0
被浏览
108
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您需要继承QPushButton该类,并重新实现enterEventand leaveEvent

    class Button(QPushButton):
    
        def __init__(self, parent=None):
            super(Button, self).__init__(parent)
            # other initializations...
    
        def enterEvent(self, QEvent):
            # here the code for mouse hover
            pass
    
        def leaveEvent(self, QEvent):
            # here the code for mouse leave
            pass
    

    然后,您可以在本地处理事件或发出信号(如果其他小部件需要对此事件做出反应,则可以使用信号将事件通知其他小部件)。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看