PyQT как сделать QEvent.Enter на QPushbutton? - PullRequest
1 голос
/ 03 августа 2011

Моя главная цель на самом деле, у меня есть Qpushbutton и рамка, что я пытаюсь сделать, это. когда я наведу курсор на Qpushbutton, появится рамка. используя видимое ложное. Может ли кто-нибудь помочь мне, пожалуйста, о том, как проводить мероприятия?

1 Ответ

4 голосов
/ 03 августа 2011

Вот краткий пример, подобный примеру, который я привел в вашем предыдущем вопросе:

from PyQt4.QtGui import QApplication, QMainWindow, QPushButton, \
            QWidget, QLabel
from PyQt4.QtCore import pyqtSignal            

class HoverButton(QPushButton):
    mouseHover = pyqtSignal(bool)

    def __init__(self, parent=None):
        QPushButton.__init__(self, parent)
        self.setMouseTracking(True)

    def enterEvent(self, event):
        self.mouseHover.emit(True)

    def leaveEvent(self, event):
        self.mouseHover.emit(False)

class MainWindow(QMainWindow):
    def __init__(self, parent=None):
        QMainWindow.__init__(self, parent) 
        self.button = HoverButton(self)
        self.button.setText('Button')
        self.label = QLabel('QLabel uses QFrame...', self)
        self.label.move(40, 40)
        self.label.setVisible(False)       
        self.button.mouseHover.connect(self.label.setVisible)

def startmain():
    app = QApplication(sys.argv)
    mainwindow = MainWindow()
    mainwindow.show()
    sys.exit(app.exec_())

if __name__ == "__main__":
    import sys
    startmain()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...