QT中border-image导致窗口中的控件背景图片改变
QT中,窗口设置背景图片image1用了border-image,导致窗口中的控件的背景图片都自动变成了image1我只想设置窗口的背景图片不想给控件设置背景图片求解答...
QT中,窗口设置背景图片image1用了border-image,导致窗口中的控件的背景图片都自动变成了image1 我只想设置窗口的背景图片 不想给控件设置背景图片 求解答
展开
1个回答
展开全部
A background-image does not scale with the size of the widget. To provide a "skin" or background that scales along with the widget size, one must use border-image. Since the border-image property provides an alternate background, it is not required to specify a background-image when border-image is specified. In the case, when both of them are specified, the border-image draws over the background-image.
默认background-image 不会缩放图片以适应控件的大小。
如果要提供一个皮肤或背景图片以自动适应控件大小,
必须也只能用border-image属性。
因为border-image已经设置了可用的背景图片,
所以使用了border-image后,没必要再指定background-image。
如果同时指定了两个属性,那么将会使用border-image 绘制覆盖掉background-image。
例子中的
QMainWindow > .QWidget {
background-color: gainsboro;
background-image: url(:/images/pagefold.png);
background-position: top right;
background-repeat: no-repeat
}
把上面的改成:
QMainWindow > .QWidget {
background-color: gainsboro;
border-image: url(:/images/pagefold.png);
}
就能实现你要的效果了,自动将pagefold.png拉伸填满整个背景。
默认background-image 不会缩放图片以适应控件的大小。
如果要提供一个皮肤或背景图片以自动适应控件大小,
必须也只能用border-image属性。
因为border-image已经设置了可用的背景图片,
所以使用了border-image后,没必要再指定background-image。
如果同时指定了两个属性,那么将会使用border-image 绘制覆盖掉background-image。
例子中的
QMainWindow > .QWidget {
background-color: gainsboro;
background-image: url(:/images/pagefold.png);
background-position: top right;
background-repeat: no-repeat
}
把上面的改成:
QMainWindow > .QWidget {
background-color: gainsboro;
border-image: url(:/images/pagefold.png);
}
就能实现你要的效果了,自动将pagefold.png拉伸填满整个背景。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询