繁体   English   中英

在布局上调整QGraphicsView小部件的大小

[英]Resize QGraphicsView widget on layout

这听起来像是以前在这里提出的问题,但是我似乎找不到我想要的东西。

因此,我有一个包含QGraphicsView的垂直布局。 我正在尝试使用户能够根据给定的任何大小来调整视图的大小。 像在MSPaint中一样,您可以为画布选择确切的尺寸。

当我运行该程序时,这在第一次运行时完美无缺,在垂直布局上,我得到的是我指定大小的QGraphicsView,但是,当在运行时调用函数resizeCanvas时,不会得到相同的效果。

相反,如果指定的值大于现有的值,我的QGraphicsView看起来将是相同的大小(例如将800x600的QGraphicsScene设置为更改为400x300),

或者相反(如果将400x300 QGraphicsScene更改为800x600),我将获得滚动条,而不是更大的QGraphicsView小部件。

canvasScene = new QGraphicsScene(this);
resizeCanvas(canvasWidth, canvasHeight);
void MainWindow::resizeCanvas(int x, int y) {
    canvasWidth = x;
    canvasHeight = y;
    canvasScene->setSceneRect(100, 100, canvasWidth, canvasHeight);
    updateCanvas();
}
void MainWindow::updateCanvas() {
    ui->canvas->setScene(canvasScene);
}

如何使其调整实际小部件的大小?

我的解决方案只是将QGraphicsView的几何设置为给定的新值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM