我的QGraphicsView
项目比其背景图片大很多,但我希望该背景图片只能绘制一次。现在,整个事物充满了背景图像,因为它有空间。
那么,如何强制将该背景图像仅绘制到视图的中心一次?
以下是我目前正在使用的代码:
QPalette palette;
palette.setBrush(this->backgroundRole(),QBrush(*myImage));
this->setPalette(palette);
感谢您的回答!
答案 0 :(得分:1)
QGraphicsView
在函数drawBackground()
中呈现背景。默认实现使用背景画笔填充视图矩形,给出您看到的结果。
您可以覆盖drawBackground()
以按照您想要的方式呈现图片,但这意味着继承QGraphicsView
。
如果这不是一个选项,你可以在场景中的最低Z顺序设置一个QGraphicsPixmapItem
和你想要的图像。