0

我对QT有点陌生。我有一个单独的Crosshair类,它只是使用QPainterand呈现十字准线QPen。我使用了这个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();
 }
4

1 回答 1

2

这应该为你做:

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

如果您在QGraphicsSceneMouseEvent.

我在这里描述了它:

如何在 QGraphicsScene 上绘制一个点(鼠标点击)?

希望有帮助。

于 2013-07-10T04:35:37.513 回答