QT qss文件全局配置控件样式表stylesheet
主要介绍了如何简约开发环境,避免在ui界面点击控件修改样式表,统一样式表的存放路径,方便后期管理调整。
一、建立存储路径
选择项目文件,右键点击后选择 添加新文件
选择Qt下的 Resource File,点击 choose
给你的私有库取一个名字,点击 下一步
点击完成
在你的qt程序原始文件夹建立一个后缀为.qss的放置样式表的文件
回到Qtcreator,右键点击刚刚创建的qrc文件,点击添加现有文件
选择刚刚创建的qss文件,点击打开
此时在qrc文件里看到刚刚的qss文件,可以给他加上前缀,也可以不加
现在点击qss文件便可以进行编辑了
二、开始编写qss,对ui里的控件进行配置
根据我ui里面控件的名称,对qss文件进行分类编写
在对象的构造函数里面写用来初始化样式表
excel::excel(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::excel)
{
ui->setupUi(this);
QFile *styleFile;
styleFile = new QFile(":/style/style.qss", this); //获取资源文件的对象
styleFile->open(QFile::ReadOnly);//只读模式
QString styleSheet = QString(styleFile->readAll());//读出的数据转成字符串
this->setStyleSheet(styleSheet);
styleFile->close();//最后关闭这个文件
}
在qss文件里面写自己的样式表
在下方可以看到 我设定了全局的背景颜色为灰色,按钮为红色,按下变色,鼠标移动到变色,又单独设置了 pushButton_W 的颜色为绿色
QMainWindow{
background-color:gray;
}
/* red button */
QPushButton {
background-color: red;
color: #333333; /* Dark text color */
}
/* Hover Effect */
QPushButton:hover {
background-color:#40E0D0; /* Light gray background on hover */
}
/* Pressed Effect */
QPushButton:pressed {
background-color: #0000FF; /* Slightly darker background on press */
}
QPushButton#pushButton_W{
background-color: green;
color: #333333; /* Dark text color */
}
运行看下效果
可以看到 已经达到预期的效果,按照这个逻辑就可以编辑你自己的qss样式表文件啦!
三、思考
1.我们这样做可以达到对一个界面(ui)的配置,那当我们有多个ui界面的时候,应该需要建立多个适配ui的qss文件
2.当我们没有ui界面配置,用代码写界面的话,该怎么去配置呢
3.如何建立属于自己的qss样式表库,方便以后一次性加入qrc文件,直接在代码里面使用呢