我正在用Qt4编写一个视频注释应用程序,用户需要能够搜索视频中的各个点,将标记放在各种对象上,然后为这些标记设置关键点,以便当他们四处移动时,他们会停留在视频中的对象上。 QGraphicsItemAnimation似乎是开始这些标记的好地方,但是它们需要能够在特定的时间出现和消失,我无法弄清楚如何处理QGraphicsItemAnimation。我可以将刻度设置为0,以使对象消失,但这似乎是一个非常冒险的解决方案,我猜测绘制引擎仍然会浪费CPU周期来绘制这些不可见的对象。有没有人有比这更好的解决方案?我现在正在使用Qt 4.5.3,但如果它使事情变得更容易,我愿意升级到4.6。谢谢!!Qt动画:出现和消失的对象
2
A
回答
1
看起来您希望显示/隐藏对象的功能超出了动画类所执行的简单"tweening"的范围。它一次只适用于一个对象,任何出现或消失都必须自己写。
你仍然可能从QGraphicsItemAnimation
得到一些里程(虽然它使用自己的计时器,而不是被锁定到您的视频的帧时钟有点狡猾)。
忽略“寻找”片刻,有一个QTimeLine::finished()信号。如果让注释的活动动画时间线的末尾代表您希望它消失的点,则可以在该点触发QGraphicsItem::hide()。当需要重新打开时,您需要构建一个新的QGraphicsItemAnimation
(基于该对象的下一轮关键帧数据)并致电QGraphicsItem::show()。
请注意,Qt 4.6的头条新增功能之一是QtAnimation框架,它比较复杂,但也相当复杂。我还没有使用它,但looking over the examples它似乎可能能够“动画”的可见性或不透明属性。
相关问题
- 1. Javascript出现/消失对象
- 2. 测试出现并消失的动画标签的文本
- 3. iAds出现和消失
- 4. 使动画片段内的多个对象一次消失
- 5. iPhone:动画视图另一个视图时出现/消失
- 6. qt stackwidget动画;以前的部件消失
- 7. 当ViewCell出现或消失时,是否可以对其进行动画制作?
- 8. Three.js调用clipAction.play()使动画对象消失
- 9. UIView和动画不出现
- 10. titleview的形象出现和消失立即
- 11. Unity对象和动画
- 12. 的NSManagedObjectContext保存出现失去对象
- 13. Wow.js - 在固定高度的滚动div中的动画。一些对象消失
- 14. UIBarButtonItem动画消失后
- 15. 标记消失后动画
- 16. 动画文本不会出现在我的UIView对象中
- 17. 制作按钮出现和消失
- 18. 滚动页面时对象消失
- 19. 消失的对象在OpenGL
- 20. 对象消失的ArrayList
- 21. Facebook发送对话框出现和消失
- 22. SnackBar出现动画
- 23. Div出现onclick,消失onclick
- 24. UISeachBar和键盘出现,消失,然后再次出现
- 25. 使用jQuery和CSS出现&消失“滚动到顶部”链接
- 26. Qt动画
- 27. Qt动画filicker
- 28. JavaScript onClick:为什么笔画出现然后消失?
- 29. VBA动画对象
- 30. Flash addChild对象消失