我已经找到了一些针对这个问题的修复程序,但似乎没有一个是足够的。我有QGraphicsView
显示QGraphicsScene
。我想要做的是缩放场景以填充整个视图。此外,我希望它在用户调整显示视图的窗口大小时动态缩放。这样的事情可能吗?如果是这样,我很高兴你能给我一个简短的例子来说明它应该如何实施。提前谢谢。
答案 0 :(得分:1)
您可以创建继承自QGraphicsView的自定义类。您应该在自定义QGraphicsView中重新实现resizeEvent(QResizeEvent * event),如:
void MyView::resizeEvent(QResizeEvent *event)
{
fitInView(0, 0, 500, 500,Qt::KeepAspectRatio);
QGraphicsView::resizeEvent(event);
}
这样,视图将始终显示整个场景。即如果更改了窗口大小并调整了graphicsView的大小,则场景会缩放,您可以正确地看到所有内容。