QT主窗口添加背景图,实现背景自动伸缩(新手必备)

一 、添加图片文件进入工程

使用资源文件添加图片进入工程,这样可以相对路径和绝对路径的问题

方法:

1,装准备好的图片放入工程文件中,注意图片文件夹和mian.c放在一个路径下QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第1张图片

2,返回项目界面,右键工项目,添加新文件,选择QT QtResource File,确定QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第2张图片

3,起名称 res(随便起,英文格式),点击完成,项目中会生成res.qrc

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第3张图片

4,这是你应该弹出了图片编辑界面,若没有弹出,右键r上个步骤生成的es.qrc,点击open in editor

5,点击“添加”,然后点击添加前缀,最后在下面的前缀框中,写上你的前缀,我写的是 /

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第4张图片

6. 再次点击添加,点击添加文件,此时会弹出对话框,然后选择你要添加的图片QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第5张图片

7,点击编译按钮,编译完成后,图片就加载进项目中了。

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第6张图片

 

二,在主窗口中添加图片(在ui界面中使用窗口使用stylesheet)

         概述:使用stylesheet设置背景图片还是有一些要注意的,如果是在mainwindow和dialog中,直接右键change style sheet在add resource中选择background-image或者border-image,选择资源文件中的图片就行了(前者是按像素显示图片,后者可根据窗体大小来自动缩放图片,通常使用后者,前者如果界面与图片大小不一样,则背景的显示可能就不是整张图片了)

        注意:在mainwindow和dialog中,你会发现,用同样的方法,dialog背景并没有发生改变(widget也不会变,只有mianwidow变了),而仅仅是它的子窗体背景图片发生了改变。    那么在widget中要如何做呢,我们在widget中放置一个frame,然后对frame通过stylesheet设置背景,后面窗体里所有的部件都放在这个frame里。

具体步骤:

1. 新建ui窗口如下QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第7张图片

2,添加frame控件(在左面工具栏中,自己找找)

注:mainwidow中跳过此步骤

3, 如下图,先选中右侧的widget,然后点击栅格化,此时frame控件铺满整个窗口

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第8张图片

4,先选中右上角的frame控件,然后点击该控件下右下角的属性stylesheet

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第9张图片

5,打开添加图片背景(添加资源下拉框,要选择boeder-image)

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第10张图片

6,点击ok,基本完成

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第11张图片

7,细节处理,若看到上下左右两侧有空隙,则选中控件,修改右下角的属性(共4个,我的这里默认为9,修改为0)

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第12张图片,

8,若此时在窗口中添加控件会有bug,控件的背景变了,如图,我添加了一个按钮

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第13张图片

9,解决方法,打开第5步的编辑界面,修改如下,点击ok修改成功,代码中的frame需要改成你自己的控件对象名称

QT主窗口添加背景图,实现背景自动伸缩(新手必备)_第14张图片

 

设置了背景之后就可以进行开发之旅了。

记得帮忙点个赞,谢谢!

 

 

 

 

 

 

 

你可能感兴趣的:(QT,QT,背景设置)