Vs+Qt 界面添加背景图的两种方式(非常实用)

简介: Vs+Qt 界面添加背景图的两种方式(非常实用)

下面介绍两种方法给 vs 建立的 qt 工程界面添加背景图!!!


1、使用代码实现界面添加背景图


//给窗口添加背景图
QPixmap Images("./1.png");
QPalette Palette = this->palette();
Palette.setBrush(QPalette::Background, Images);
this->setPalette(Palette);

6aad41d2c04940d08658d52e313cf1b5.png

说明:使用该方法实现界面添加背景图能够正常显示,如上图所示,但是如果需要把该工程打包成 .exe 然后移植到别的电脑运行,需要注意以下两个细节:

(1)把背景图放到该工程文件中(如下图),并在代码中使用相对路径(代码如上所示);

8d277ff597584b9da9e60eb1ccb20e0b.png

(2)在 .exe 文件目录再复制一份背景图(如下所示);

33b092e238ab4d608384a200d1f3ab66.png

说明:此时移植后的 .exe 便能正常在界面上显示背景图;


2、使用样式表实现界面添加背景图


(1)双击 c++ 工程中的 .ui 文件,打开后右击界面,选择改变样式表,出现如下窗口

3032827b80904bb48e3614e227ca84b4.png

(2)点击添加资源右侧的下三角图标,并点击 background-image 出现如下界面

899544d1c6734cf0a43ec5b02e5ea8b1.png

55dae98af4b94adbb8a35e8bb6d71125.png

(3)点击左侧铅笔图标,然后点击左下侧的打开资源图标,出现如下界面

85d80498ea684ab89ba6182267a54c04.png

(4)选择 c++ 工程文件下的 .qrc 文件,点击打开,然后编辑资源界面中便有了相应的 .qrc 文件

e72a8f21766a4c8a9d1a7a6e0bde4022.png

ec026615811f47aa8a9e69de773ada0e.png

(5)点击右侧方框下侧的添加文件,选择自己的背景图,出现如下界面

21d77e125d464b1db17270e2719a5be5.png

94a7d8144bac4938b2db2c37dbe70f11.png

(6)选中添加进去的背景图,点击 OK ,此时背景图添加成功

fdf2481dfa3d4bbf86ae203fb1d26900.png

c6e5a18d2aa949a0833dada23092ea28.png

0bcdb82ca48f46edab322558a35da0cc.png

(7)从上图可以看出在添加背景图后,别的控件也都受到了影响,所以在添加背景图时需要加作用域,#myProcess{background-image: url(:/myImageRegistration/1.png);} 其中 myProcess 是该界面所在类名称,从界面的右侧也可以看出

d6bcae4cf04b4c5a85e2913104fd295d.png

6e960e8fcd0846a98a587d517f79b59b.png

(8)添加作用域后的结果如下图

6029481200784702950ada8efe1412ba.png

(9)在编辑器中虽然显示添加成功,但是在运行代码时,该背景图并未成功显示,如果哪位大佬知道原因,望告知,非常感谢!


3、控件的字体和颜色设置


控件的字体和颜色设置也是通过修改样式表,如下图所示:

6d1454b3b24d43a0850d73af211ac126.png

background-color:rgb(46, 140, 140);        //设置背景颜色
font: 14pt "Comic Sans MS";                //设置字体格式
color:rgb(255, 255, 255);                  //设置字体颜色
说明:
     在设置控件背景颜色时需要加前缀 background-color:
     在设置字体颜色时需要加前缀 color:
     否则会提示样式表无效!


相关文章
|
7月前
|
数据可视化 API vr&ar
探索Qt 3D之旅:从基础到实战,打造引人入胜的三维界面与应用
探索Qt 3D之旅:从基础到实战,打造引人入胜的三维界面与应用
1029 2
|
7月前
|
编解码 并行计算 Java
QT界面中实现视频帧显示的多种方法及应用(二)
QT界面中实现视频帧显示的多种方法及应用
1101 0
|
7月前
|
存储 测试技术 UED
Qt中实现界面回放的艺术:从理论到代码“ (“The Art of Implementing UI Playback in Qt: From Theory to Code
Qt中实现界面回放的艺术:从理论到代码“ (“The Art of Implementing UI Playback in Qt: From Theory to Code
178 1
|
4月前
|
监控 C++ 容器
【qt】MDI多文档界面开发
【qt】MDI多文档界面开发
112 0
|
2月前
|
编译器
【项目开发】QT简单练习之QQ登录界面模仿
为了进一步加深对QT开发的理解,在学习完基础操作之后要进行一个简单的练习。
|
7月前
|
编译器
QT creator开发环境下 界面更改后运行程序不能实时更新或者在源文件添加该控件后无法编译的问题
在使用QT Creator开发界面的过程中,偶尔会出现添加控件后,运行程序后,界面控件无法更新的情况,或者在源文件使用该控件却出现无法编译的情况,使用QT Creator 4.8.2也会出现这个情况,也不知道这种情况会不会在以后有所改善。
332 0
|
7月前
|
编解码 C++
Qt第一课 第一个ui界面
Qt第一课 第一个ui界面
99 2
|
7月前
|
区块链
【qt】最快的开发界面效率——混合编程3
【qt】最快的开发界面效率——混合编程
110 1
|
7月前
【qt】最快的开发界面效率——混合编程2
【qt】最快的开发界面效率——混合编程
85 1
|
7月前
【qt】设计器实现界面
【qt】设计器实现界面
54 1