view 自适应Centrallayout的大小
时间: 2024-02-23 15:02:35 浏览: 73
如果你想让`QGraphicsView`自适应`QGraphicsScene`的大小,可以使用`fitInView()`函数。
`fitInView()`函数可以将`QGraphicsScene`中的所有内容都缩放到`QGraphicsView`中,并将缩放后的内容居中显示。你可以在`QGraphicsView`的`resizeEvent()`函数中调用`fitInView()`函数,确保`QGraphicsView`的大小发生变化时,内容能够自适应。
以下是一个示例代码:
```cpp
void MyGraphicsView::resizeEvent(QResizeEvent *event)
{
QGraphicsView::resizeEvent(event);
fitInView(scene()->sceneRect(), Qt::KeepAspectRatio);
}
```
在这个示例代码中,我们自定义了一个`MyGraphicsView`类,重载了`resizeEvent()`函数。在`resizeEvent()`函数中,我们首先调用了`QGraphicsView`的`resizeEvent()`函数,确保`QGraphicsView`的大小已经被正确设置。然后,我们调用了`fitInView()`函数,将`QGraphicsScene`中的所有内容缩放到`QGraphicsView`中,并将缩放后的内容居中显示。`Qt::KeepAspectRatio`参数表示保持宽高比缩放。
这样,当`QGraphicsView`的大小发生变化时,`QGraphicsScene`中的内容就可以自适应了。
阅读全文
相关推荐


















