查看完整版本: [-- QGraphicsView缩放后显示区域在原区域的坐标该如何计算? --]

QTCN开发网 -> Qt基础编程 -> QGraphicsView缩放后显示区域在原区域的坐标该如何计算? [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

热带冰川 2020-09-16 23:42

QGraphicsView缩放后显示区域在原区域的坐标该如何计算?

        在工作中遇到的问题,考虑用户使用便利性,参考图片查看器的功能,在主体显示区使用QGraphicsView显示图像,用鼠标左键可以拖拽画面,用鼠标滚轮可以缩放,在预览区显示整个画面,并用红色方框标示主体显示区所显示的区域,如下图所示。
        现在的问题是,预览区的红色方框与主体显示区的显示区域还没有关联起来,如果我能够知道显示区域在原区域的坐标值,那就很方便,请问各位大神们有没有什么好办法呢?

   [attachment=21901]

         附上源码链接:https://gitee.com/HelloWorldApple/QGraphicsView-example.git

272064949 2020-09-18 15:19


我是这样做的, 用一个scrollArea来当容器, 只要里面的widget比scrollArea大,就会显示滚动条, 在widget上放置大图,
预览图是自己定义的了一类继承自qwidget, 自己来绘制预览图和红色的矩形框体

然后用信号监听scrollArea的滚动条事件,然后拿到滚动条的值后,通过计算得出矩形框体的位置和大小。

[attachment=21909]






查看完整版本: [-- QGraphicsView缩放后显示区域在原区域的坐标该如何计算? --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled