Qt QGraphics在中心查看一张背景图片
Posted
技术标签:
【中文标题】Qt QGraphics在中心查看一张背景图片【英文标题】:Qt QGraphicsView one background image on center 【发布时间】:2010-11-09 23:31:26 【问题描述】:我的QGraphicsView
项目比它的背景图像大很多,但我希望该背景图像只绘制一次。现在整个东西都被该背景图像填充了多少次。
那么,如何强制将背景图像仅绘制一次到视图的中心?
这是我目前正在使用的代码:
QPalette palette;
palette.setBrush(this->backgroundRole(),QBrush(*myImage));
this->setPalette(palette);
感谢您的回答!
【问题讨论】:
【参考方案1】:QGraphicsView
在函数drawBackground()
中渲染背景。这个的默认实现使用背景画笔填充视图矩形,给出您所看到的结果。
您可以覆盖 drawBackground()
以按照您想要的方式渲染图像,但这意味着子类化 QGraphicsView
。
如果这不是一个选项,您可能可以在场景中的最低 Z 顺序设置一个QGraphicsPixmapItem
,并使用您想要的图像。
【讨论】:
以上是关于Qt QGraphics在中心查看一张背景图片的主要内容,如果未能解决你的问题,请参考以下文章