您好,登錄后才能下訂單哦!
如下所示:
# -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets import (QApplication, QMainWindow, QLabel) from PyQt5.QtCore import Qt class AppDemo(QMainWindow): def __init__(self): super(AppDemo, self).__init__() self.init_ui() def init_ui(self): self.resize(300, 200) self.setWindowTitle('666') self.label = QLabel(self) self.label.setAlignment(Qt.AlignCenter) self.label.setText('六神花露水') self.label.setGeometry(5, 5, 145, 185) self.label.setMouseTracking(True) self.label_mouse_x = QLabel(self) self.label_mouse_x.setGeometry(155, 5, 80, 30) self.label_mouse_x.setText('x') self.label_mouse_x.setMouseTracking(True) self.label_mouse_y = QLabel(self) self.label_mouse_y.setText('y') self.label_mouse_y.setGeometry(155, 40, 80, 30) self.label_mouse_y.setMouseTracking(True) def mouseMoveEvent(self, event): s = event.windowPos() self.setMouseTracking(True) self.label_mouse_x.setText('X:' + str(s.x())) self.label_mouse_y.setText('Y:' + str(s.y())) def run_it(): app = QApplication(sys.argv) w = AppDemo() w.show() sys.exit(app.exec_()) if __name__ == '__main__': run_it()
特別注意:
在繼承QMainwindow的時候,如果你想在窗口中任意位置都獲取坐標值的話,就得對每個控件都設置setMouseTracking(True),不然就會出現鼠標在空間上面的時候無法獲取坐標值;如果你在重寫mouseMoveEvent的時候不加setMouseTracking(True),那么你只有按住鼠標左鍵移動的時候才會獲取值。所以,把想獲取的地方都加上吧。
以上這篇pyqt5移動鼠標顯示坐標的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。