QT:绘制原始跟随光标

时间:2013-07-10 01:58:22

标签: c++ qt

我对QT有点新意。我有一个单独的Crosshair类,只需使用QPainterQPen呈现十字准线。我使用了paint()函数,它确实在窗口的某个位置显示十字准线。如何使十字准线跟随当前的鼠标位置?

这是我的方法,但我无法让它发挥作用。我正在关注VoidRealms教程。

void Crosshair::mouseMoveEvent(QGraphicsSceneMouseEvent *event){

   // i want to update the x and y position when the mouse moves
   //x = mouse.x
   //y = mouse.y
   QGraphicsItem::mouseMoveEvent(event);
   update();
 }

1 个答案:

答案 0 :(得分:2)

这应该适合你:

this->setPos(event->x(), event->y());

如果您在QGraphicsSceneMouseEvent之外进行场景映射,还可以使用其他辅助函数。

我在这里描述了它:

How to draw a point (on mouseclick) on a QGraphicsScene?

希望有所帮助。