有时候我们需要实现整个界面风格的换肤可以用这个简便的方式
1.首先我们先增加一个以.qss为后缀的文件my.qss;
2.把要改变的样式放在my.qss文件中。
3.把我们写好的my.qss文件添加在资源文件.qrc中。
4.调用这个文件
1 QFile file(":/qss/my.qss");2 //只读的方式打开该文件3 file.open(QFile::ReadOnly);4 //读取文件中的全部内容,用tr()函数转化成QString类型5 QString styleSheet = tr(file.readAll());6 //为QApplication设置样式表
5.my.qss文件
1 /*****************主界面背景***********************/ 2 QMainWindow{ 3 /*背景图片*/ 4 background-image: url(:/image/beijing.png); 5 } 6 7 /*****************按钮部件************************/ 8 QPushButton{ 9 /*背景色*/10 background-color:rgba(100,225,100,30);11 /*边框样式*/12 border-style:outset;13 /*边框宽度*/14 border-width:4px;15 /*边框圆角半径*/16 border-radius:10px;17 /*边框颜色*/18 border-color:rgba(255,225,255,30);19 /*字体*/20 font:bold 14px;21 /*字体颜色*/22 color:rgba(0,0,0,100);23 /*填衬*/24 padding:6px;25 }26 27 /*鼠标悬停在按钮上时*/28 QPushButton:hover{29 background-color:rgba(100,255,100,100);30 border-color:rgba(255,255,255,200);31 color:rgba(0,0,0,200);32 }33 34 /*按钮被按下时*/35 QPushButton:pressed {36 background-color:rgba(100,255,100,200);37 border-color:rgba(255,255,255,20);38 border-style:inset;39 color:rgba(0,0,0,100);40 }41 42 43 /*******************滑块部件******************************/44 /*水平滑块的手柄*/45 QSlider::handle:horizontal{46 image: url(:image/sliderHandle.png);47 }48 49 /*水平滑块以前的部分*/50 QSlider::sub-page:horizontal{51 /*边框图片*/52 border-image:url(:/image/slider.png);53 }