Ich mache eine GUI für TouchscreenPython qt Designer Maus-Tracking-Cursor-Position
Taster in diesem GUI sollte Signal erzeugen, wenn sich der Mauszeiger auf den Tasten
Aber qt-Designer ist nicht über diese Art von Signal (ich habe versucht, bereits freigegeben, geklickt, gepresst)
Deshalb denke ich ständig Cursor-Position-Tracking kann
jedoch eine Lösung sein, ich habe keine Ahnung, wie Maus zu implementieren Tracking (wie mousemove) in der Code generiert durch qt Designer und pyuic
Wenn ich die Maus-Tracking-Code von anderen Beispielen verwenden, ist es nicht ...
Bitte helfen Sie mir
Hier funktioniert der Code, was wesentliche Teile enthält nur
from PyQt4 import QtCore, QtGui
import sys
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
def _fromUtf8(s):
return s
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig)
class Ui_MainWindow(object):
def mouseMoveEvent(self, event):
current = QtGui.QCursor.pos()
x = current.x()
y = current.y()
print("Mouse %d %d" % (x,y))
def setupUi(self, MainWindow):
MainWindow.setObjectName(_fromUtf8("MainWindow"))
MainWindow.resize(1920, 720)
import resources_rc
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
MainWindow = QtGui.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.setMouseTracking(True)
MainWindow.show()
sys.exit(app.exec_())
Betrachten wir ein event anstelle der Umsetzung, da Maus-Tracking ein sehr Schwergewicht Satz ist, und Sie setzen nie 'Widget-> setMouseTracking (true);' Natürlich ist Ihre Mausverfolgung deaktiviert. –
Ich habe MainWindow.setMouseTracking (True) und self.centralwidget = QtGui.QWidget (MainWindow), self.centralwidget.setMouseTracking (True) ebenfalls hinzugefügt, aber QCursor antwortet nicht –