【问题标题】:QGraphicsView viewport rect problemsQGraphicsView视口矩形问题
【发布时间】:2013-10-28 19:53:50
【问题描述】:

当我将场景矩形设置为视口的相同矩形时:

mCanvasScene->setSceneRect(mCanvasView->viewport()->rect());

QGraphicsView 在小部件中创建滚动条,但如果场景与视口大小相同,为什么会有滚动条?视口中的rect() 似乎不是视口区域的正确大小。

有谁知道如何设置与视口可见区域大小相同的场景?

【问题讨论】:

  • 你能提供一个SSCCE吗?我似乎无法重现这一点。当我做view->scene()->setSceneRect(view->viewport()->rect()); 时,我没有滚动条。
  • GraphicsScene 上的 GraphicsView 就像一扇面向世界的窗口。要将场景设置为视图的大小似乎很奇怪。
  • 为什么想要与视口大小相同的场景很奇怪?
  • thuga,你是在表格显示之前还是之后调用它?如果表格显示后,我会打电话。

标签: c++ qt qgraphicsview qgraphicsscene


【解决方案1】:

QGraphicsView继承自QAbstractScrollAreaviewport()返回由滚动区域管理的widget,通常比实际的滚动区域widget大(首先使用滚动区域的原因)。

可见区域的正确大小是QGraphicsView 的大小(调用内部小部件视口有点误导)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-19
    • 1970-01-01
    • 2016-09-11
    • 1970-01-01
    • 2013-07-12
    • 1970-01-01
    • 2010-11-16
    • 2011-02-16
    相关资源
    最近更新 更多