我用相同的代码qss文件在window下加载运行是正常的,为什么在linux arm里面就没效果呢?代码很简单如下:
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Program w;
w.show();
return a.exec();
}
Program::Program(QWidget *parent) :
QWidget(parent)
{
this->setGeometry(0,0,g_nScreenWidth,g_nScreenHeight);
QFile file(":/titleWindow.qss");
if(!file.open(QIODevice::ReadOnly))
perror("fail to open qss:");
QString str = file.readAll();
qApp->setStyleSheet(str);
file.close();
CustomTitle *pCustom = new CustomTitle(this);
pCustom->show();
}
CustomTitle::CustomTitle(QWidget *parent) :
QWidget(parent)
{
filter = new Ui::FilterSetting;
filter->setupUi(this);
}
我的编译环境是arm+qt4.8.5。不知道有没有其他人遇到过这种情况?
------解决思路----------------------
能open这个qss file吗?
------解决思路----------------------
在arm也能显示出qss效果的。可能是文件没有打开。或者你直接在designer上设置qss试试
------解决思路----------------------
既然可以打开qss文件,那么readall得到的内容正确不;
我用这句测试一下没问题哦 qApp->setStyleSheet("QPushButton{background-color:blue;}");