我有一个包含QGraphicsItems的QGraphicsScene。点击这样的项目后,我打开一个对话框。我现在希望项目显示在对话框的区域中。
我尝试了一个QGraphicsView(在对话框中)并“指向”它完美地工作的项目。问题是,可以单击对话框中的项目,这将打开一个新对话框。
所以我的问题:是否有一种简单的方法可以告诉QGraphicsView忽略任何输入事件?如果没有,是否有一种简单的方法可以在窗口小部件中显示QGraphicsItem?
答案 0 :(得分:1)
我感觉很蠢......
QGraphicsView::setInteractive(false)
完成了这个伎俩。
我仍然可以使用鼠标滚轮移动图标,但这可以通过使用setSceneRect()
答案 1 :(得分:0)
您可以在QGraphicsView上安装一个忽略输入事件的事件过滤器。 Qt documentation表示:
在重新实现此功能时,如果要过滤掉事件,即停止进一步处理,请返回true;否则返回false。