簡體   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