[英]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.