如何在 PyQt 中将 QPointf 转换为 QPoint

kar*_*ana 3 python qt pyqt

我想知道如何将 QPointf 位置转换为 PyQt 中的 QPoint 位置,因为我需要使用项目的位置来设置鼠标位置。我一直在尝试这个,但没有任何反应:

xq=node.pos().x()
yq= node.pos().y()
x=int(xq)
y=int(yq)
QtGui.QCursor.setPos(x,y)
Run Code Online (Sandbox Code Playgroud)

提前致谢!

gat*_*tto 5

在解释器中尝试这些命令:

from PyQt4 import QtGui, QtCore
point = QtCore.QPointF(100.2, 144.23)
QtGui.QCursor.pos(), QtGui.QCursor.setPos(point.toPoint()), QtGui.QCursor.pos()
# (PyQt4.QtCore.QPoint(1335, 691), None, PyQt4.QtCore.QPoint(100, 144))
Run Code Online (Sandbox Code Playgroud)

但真正的问题可能是您使用了项目坐标,您必须将其映射到全局坐标。

看到这个答案。基本上他以下列方式映射坐标:

项目 -> 场景 -> 视图 -> 全局