我有多个QGraphicsItem
场景中的内容分布在场景的不同部分。在应用程序中,有不同的模式,其中一种模式用户可以滚动场景(手掌拖动模式)。
为了实现场景I的滚动set dragMode
of QGraphicsView
to ScrollHandDrag
.
但问题是当用户尝试通过拖动(MousePress
and MouseMove
)在任何一个QGraphicsItem
它不是滚动场景而是移动QGraphicsItem
.
How 我可以停止移动吗QGraphicsItem
并滚动场景,但我还是想选择QGraphicsItem
s?
任何解决方案或任何指示都会有所帮助。
NOTE :有非常多的QGraphicsItem
s 和 都有多种类型。
所以不可能安装事件过滤器QGraphicsItem
s.
我没有修改项目标志,而是将整个视图设置为在 ScrollHandDrag 模式下不交互。问题是,您需要有额外的交互类型(即控制键、其他鼠标按钮等)才能启用它。
setDragMode(ScrollHandDrag);
setInteractive(false);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)