鼠标事件演示
一、学习指导
在上一章节中我们说过事件的机制,也说过事件和信号相比较而言更加偏向于底层,也就是更加接近硬件,这节课就来说说鼠标常见的事件操作。通过学习鼠标事件帮助我们能使用PyQt5从根本上实现对鼠标的控制。
二、代码演示
from PyQt5.Qt import * import sys class MyWin(QWidget): # QMouseEvent def mouseMoveEvent(self, QMouseEvent): print('WWWWW', QMouseEvent.globalPos()) # 参考QMouseEvent文档,重点是全局和局部位置 return super().mouseMoveEvent(QMouseEvent) def mousePressEvent(self, QShowEvent): print('鼠标按下') def mouseReleaseEvent(self, QShowEvent): print('鼠标松开') def mouseDoubleClickEvent(self, QShowEvent): print('鼠标双击') def enterEvent(self, QEvent): print('鼠标进入事件') self.setStyleSheet("background-color:red;") def leaveEvent(self, QEvent): print('鼠标离开事件') self.setStyleSheet("background-color:green;") app = QApplication(sys.argv) window = MyWin() window.setWindowTitle('鼠标跟踪') window.resize(600, 450) window.move(300, 300) btn = QPushButton(window) btn.move(60, 60) btn.resize(50, 35) btn.setText('按钮控件') btn.setStyleSheet('background-color:green') window.show() sys.exit(app.exec_())