首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QGraphicsItem -跟随鼠标光标

QGraphicsItem -跟随鼠标光标
EN

Stack Overflow用户
提问于 2012-03-22 01:10:04
回答 1查看 3.3K关注 0票数 4

我被困在如何处理这件事上了。我在一个场景中有一个QGraphicsItem,我将一个悬停事件从场景传递给这个孩子。当移动事件发生时(我只是使用mouseMoveEvent并对鼠标进行跟踪),我希望另一个QGraphicsItem跟踪光标。

我不需要任何碰撞检测,拖放,等等,只是一个项目,在光标后面。我唯一能想到的两种方法是..。

  1. 当鼠标移动时,在鼠标位置画一个新的QGraphicsItem。我需要清理现场,重新绘制一切,并在上面画新的位置。
  2. 以某种方式使用动画框架,每当鼠标移动时,动画QGraphicsItem以1毫秒的速度移动到新的鼠标位置。

我可能是想得太多了,或者不知道有什么别的办法.有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-22 08:14:12

我就是这样做的

  1. 创建将用鼠标移动的GraphicsItem cursor,并将其指针存储在某个地方(例如,在场景子类中)。我有一个工具集,所以对我来说,它在其中一个工具中)
  2. Set它的Z-值(QGraphicsItem::setZValue),这样光标将在场景中的
  3. 跟踪QGraphicsScene::mouseMoveEvent事件的所有其他项目之上绘制,将这些事件转发到cursor指针,并更新项目的位置

就这样。我想它与您的解决方案1相对应,但由于z值特性,您不必清除场景。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9815134

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档