QSS样式表在linux下没有效果

Creator_莫言 2014-09-28 05:36:30
我用相同的代码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。不知道有没有其他人遇到过这种情况?
...全文
524 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Creator_莫言 2014-10-15
  • 打赏
  • 举报
回复
引用 9 楼 linuxsmallping 的回复:
[quote=引用 8 楼 sddsighhz 的回复:] [quote=引用 7 楼 linuxsmallping 的回复:] 在arm也能显示出qss效果的。可能是文件没有打开。或者你直接在designer上设置qss试试
在arm里面以代码形式或者designer里加载qss都可以显示,但是因为我的窗口比较多,所以就像用加载qss文件的形式来设置窗口样式,然后就出现了我所说的问题。文件是肯定打开了的,这个我有打印查看,只是好像导入qss不成功。[/quote] 既然可以打开qss文件,那么readall得到的内容正确不; 我用这句测试一下没问题哦 qApp->setStyleSheet("QPushButton{background-color:blue;}");[/quote] 经过半个小时的验证,终于知道是什么原因了,我说过用代码的方式写就可以,就像你写的方式那样,但是写到文件里面读出来就不能显示。。。我打印读出来的str ,发现开头总是会有个空格,就是这个空格导致qss加载不成功,我截取空格之后的str,显示终于正常了。
鱼公子哟西 2014-10-15
  • 打赏
  • 举报
回复
引用 8 楼 sddsighhz 的回复:
[quote=引用 7 楼 linuxsmallping 的回复:] 在arm也能显示出qss效果的。可能是文件没有打开。或者你直接在designer上设置qss试试
在arm里面以代码形式或者designer里加载qss都可以显示,但是因为我的窗口比较多,所以就像用加载qss文件的形式来设置窗口样式,然后就出现了我所说的问题。文件是肯定打开了的,这个我有打印查看,只是好像导入qss不成功。[/quote] 既然可以打开qss文件,那么readall得到的内容正确不; 我用这句测试一下没问题哦 qApp->setStyleSheet("QPushButton{background-color:blue;}");
Creator_莫言 2014-10-15
  • 打赏
  • 举报
回复
引用 7 楼 linuxsmallping 的回复:
在arm也能显示出qss效果的。可能是文件没有打开。或者你直接在designer上设置qss试试
在arm里面以代码形式或者designer里加载qss都可以显示,但是因为我的窗口比较多,所以就像用加载qss文件的形式来设置窗口样式,然后就出现了我所说的问题。文件是肯定打开了的,这个我有打印查看,只是好像导入qss不成功。
鱼公子哟西 2014-10-15
  • 打赏
  • 举报
回复
在arm也能显示出qss效果的。可能是文件没有打开。或者你直接在designer上设置qss试试
Creator_莫言 2014-10-10
  • 打赏
  • 举报
回复
引用 5 楼 ganjianh8 的回复:
能open这个qss file吗?
可以,打开没有问题。在windows和ubuntu下都能显示出效果,但是交叉编译到arm下运行就没有效果了。不知道是什么原因
ganjianh8 2014-10-10
  • 打赏
  • 举报
回复
能open这个qss file吗?
Creator_莫言 2014-10-09
  • 打赏
  • 举报
回复
up~~~~~~~没有在linux下用过qss的大神在吗?
Creator_莫言 2014-10-08
  • 打赏
  • 举报
回复
再顶一下
Creator_莫言 2014-09-29
  • 打赏
  • 举报
回复
顶一下

16,228

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧