当前位置: 代码迷 >> QT开发 >> Qt控件的样式QSS解决办法
  详细解决方案

Qt控件的样式QSS解决办法

热度:426   发布时间:2016-04-25 05:13:47.0
Qt控件的样式QSS
我想通过QSS设置控件样式eg:QPushButton
1、我在style.qss中写入QPushButton{background-color: red;}
2、添加style.qss到资源文件xx.qrc中
3、在main()函数中加入以下代码:
QApplication a(argc,argv);

QPushButton *btn = new QPushButton;
QFile qss(":style.qss");
qss.open(QFile::ReadOnly);
a.setStyleSheet(qss.readAll());
  qss.close();

btn->show();
return a.exec();
从理论上来讲这样的话,按钮会显示成红色,但是我的却没有改变,请问高手,是我哪边少写了什么?还是哪边有错误呢?

------解决方案--------------------
QFile qss(":style.qss"); 
改为
QFile qss("./style.qss");

你这是一个外部文件,不是从resource中直接读取。
 
------解决方案--------------------
readAll()方法返回的是QByteArray,不是QByteArray *,另外我在项目中使用a.setStyleSheet(qss.readAll());没有问题
  相关解决方案