• 5750阅读
  • 5回复

[提问]setStyleSheet 显示乱码 [复制链接]

上一主题 下一主题
离线luyade
 
只看楼主 倒序阅读 楼主  发表于: 2011-12-19
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
请教各位牛人,本人初学QT,如果有什么没讲清楚的,请各位板砖

我现在的一个项目中用到styleSheet,先将各种style rule写在一个qss文本文件中(其中有日文字符),然后QFile读取到QString中,然后在调用setStytleSheet,但是在界面显示时却乱码了,而语言环境已经切换成日文了
platform: linux

Thanks in advance
离线uidab

只看该作者 1楼 发表于: 2011-12-19
先统一一下编码!!
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线roywillow

只看该作者 2楼 发表于: 2011-12-19
你的qss文件用的是什么编码?能确保Qt一定能正确识别该编码吗?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线XChinux

只看该作者 3楼 发表于: 2011-12-19
你的.qss文件统一一下编码,读取的时候也要按对应编码读进来 。比如.qss文件是UTF-8的,则读的时候

QFile file("stlye.qss");
if (file.open(QIODevice::ReadOnly | QIODevice::Text))
{
   QTextStream in(&file);
   in.setCodec("UTF-8");
   QString strStyleSheet = in.readAll();
   qApp->setStyleSheet(strStyleSheet);
    file.close();
}
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线luyade
只看该作者 4楼 发表于: 2011-12-19
回 3楼(XChinux) 的帖子
谢谢 我试试
离线luyade
只看该作者 5楼 发表于: 2011-12-20
回 3楼(XChinux) 的帖子
谢谢 已经搞定了
快速回复
限100 字节
 
上一个 下一个