Qt4 QGraphicsView:如何在浮动位置设置QPen

时间:2010-09-30 12:40:02

标签: qt4 qgraphicsview

我有一个带有图像和自定义光标的QGraphicsView。光标由两个QPen-DotLines组成。 x轴dotLine和y轴dotLine。两条线的交叉是鼠标光标位置。问题是,当我放大时,十字架不再位于鼠标光标位置下方。例如,当鼠标光标的值为x = 1.4235 ans y = 2.7732时 然后dotLines设置在x = 1和y = 2的位置。但是我想在浮点位置上设置dotLines(x = 1.4235 ans y = 2.7732)。我怎样才能做到这一点。

我得到的鼠标位置

def mouseMoveEvent(self,event):
    ...
    ... self.grview.mapToScene(event.pos())
    ...

和我用setPos()设置的dotLines。 我认为setPos()将float转换为int。但我不知道如何解决。希望你们中的某个人有一个有用的想法。

1 个答案:

答案 0 :(得分:0)

我发现了问题。在使用“drawEllipse(int x,int y,int width,int height)”之前实现了一些代码的人,这将float转换为int。所以我唯一要做的就是用“drawEllipse(const QPointF& center,qreal rx,qreal ry)”替换它。 对不起,谢谢你。