2010-11-09 31 views
3

我的QGraphicsView項目比背景圖片大很多,但我希望只能繪製一次背景圖片。現在,整個事物充滿了這個背景圖像的次數,因爲它有空間。Qt QGraphics查看中心背景圖片

那麼,如何強制該背景圖像只能被繪製一次到視圖的中心?

這是我目前使用的代碼:

QPalette palette; 
palette.setBrush(this->backgroundRole(),QBrush(*myImage)); 
this->setPalette(palette); 

謝謝您的解答!

回答

1

QGraphicsView呈現函數drawBackground()中的背景。此默認實現使用背景畫筆填充視圖矩形,並提供您所看到的結果。

您可以覆蓋drawBackground()以按照您的方式呈現圖像,但這意味着繼承QGraphicsView

如果這不是一個選項,你可以設置一個QGraphicsPixmapItem在場景中的最低Z順序與你想要的圖像。