标题:QGraphicsView缩放后显示区域在原区域的坐标该如何计算?
作者:热带冰川
日期:2020-09-16 23:42
内容:
在工作中遇到的问题,考虑用户使用便利性,参考图片查看器的功能,在主体显示区使用QGraphicsView显示图像,用鼠标左键可以拖拽画面,用鼠标滚轮可以缩放,在预览区显示整个画面,并用红色方框标示主体显示区所显示的区域,如下图所示。
现在的问题是,预览区的红色方框与主体显示区的显示区域还没有关联起来,如果我能够知道显示区域在原区域的坐标值,那就很方便,请问各位大神们有没有什么好办法呢?
附上源码链接:https://gitee.com/HelloWorldApple/QGraphicsView-example.git
#1 [272064949 09-18 15:19]
我是这样做的, 用一个scrollArea来当容器, 只要里面的widget比scrollArea大,就会显示滚动条, 在widget上放置大图,
预览图是自己定义的了一类继承自qwidget, 自己来绘制预览图和红色的矩形框体
然后用信号监听scrollArea的滚动条事件,然后拿到滚动条的值后,通过计算得出矩形框体的位置和大小。