我正在QGraphicsView中构建节点图,目前正在实现平移。我使用以下问题“如何在QGraphicsView中平移图像”开始,但平移受滚动条范围的限制。
我也尝试了翻译方法,但它给出了相同的结果。该视图仅限于某个矩形。
我想无限制地平移,该图可能会变得很大,并且能够在场景的不同区域(一个图在这里,在那边的另一个图等)工作非常有用。
如果您观看此视频,则在3分钟标记处,您将看到演示平移屏幕。这里的应用程序是我开发的,尽管没有显示,但是在平移时板子的空间似乎是无限的。
为此,我要做的是创建一个32000 x 32000的QGraphicsScene并以QGraphicsScene中心的视图启动该应用程序。测试团队花了很长时间尝试平移到图形场景的边缘,每个人在到达那里之前就放弃了-也许场景可能更小!
将滚动条策略设置为关闭,并通过其转换功能通过移动QGraphicsView来完成转换,传入在mouseMoveEvent中应用的触摸或鼠标移动的增量。
这样,您不必担心超出滚动条范围,并且创建一个非常大的QGraphicsScene也没有问题,因为它只是一个坐标空间。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句