qt6_demo03.py 944 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import sys
  2. from PyQt6.QtCore import Qt
  3. from PyQt6.QtWidgets import QWidget, QApplication, QGridLayout, QLabel
  4. class Example(QWidget):
  5. def __init__(self):
  6. super().__init__()
  7. self.initUI()
  8. def initUI(self):
  9. grid = QGridLayout()
  10. x = 0
  11. y = 0
  12. self.text = f'x: {x}, y: {y}'
  13. self.label = QLabel(self.text, self)
  14. grid.addWidget(self.label, 0, 0, Qt.Alignment.AlignTop)
  15. self.setMouseTracking(True)
  16. self.setLayout(grid)
  17. self.setGeometry(300, 300, 450, 300)
  18. self.setWindowTitle('Event object')
  19. self.show()
  20. def mouseMoveEvent(self, e):
  21. x = int(e.position().x())
  22. y = int(e.position().y())
  23. text = f'x: {x}, y: {y}'
  24. self.label.setText(text)
  25. def main():
  26. app = QApplication(sys.argv)
  27. ex = Example()
  28. sys.exit(app.exec())
  29. if __name__ == '__main__':
  30. main()