时间记录:2024/1/6
一、添加使用资源文件
1.1 创建项目并打开项目(带ui界面的项目)
1.2 使用快捷键Ctrl+n创建文件,选择"QT"下面的"QT Resource File"
1.3 输入文件名和文件保存路径
1.4 将需要添加的文件复制到项目目录下,可以创建个文件夹专门用来保存资源文件
1.5 将文件引入到QT项目
1.5.1 添加前缀
1.5.2 添加文件
1.6 应用资源文件,将图片文件加载到QLabel标签上显示
二、样式设置QSS,类似于CSS,很多的CSS都可以使用
2.1 使用ui界面进行设置,右键单击控件选择“改变样式表”,然后写入QSS代码即可
2.2 使用代码方式实现
使用控件的setStyleSheet方法进行设置,参数字符串为QSS样式代码
QLabel *label1 = new QLabel;
label1->setStyleSheet("QLabel{border-image: url(:/icon/app.ico);}");
label1->setParent(this);
label1->setGeometry(0,0,100,100);
label1->show();
2.3 创建qss文件,然后在qss文件中进行编写样式,最后加载qss文件设置全局样式,类似于CSS中引入外部样式文件方式
QFile file(":/qss/style.qss");
if(file.exists()){//判断文件是否存在
file.open(QFile::ReadOnly);//以只读方式打开
QString styleSheet = QLatin1String(file.readAll());//读取文件,以字符串形式存储
qApp->setStyleSheet(styleSheet);//设置全局样式
file.close();//关闭文件
}
设置全局样式的注意点:
1.Windows中需要打开qss文件,将文件的编码改为UTF-8/ANSI编码,不能是UTF-8 BOM
2.全局样式设置时,为了给同类型控件不同的控件对象设置不同样式,需要进行区分,此时需要设置对象名,然后区分
label1->setObjectName("label1");
QLabel#label1{
border-image: url(:/icon/app.ico);
}