1、前景提要
2、原因
3、解决方案
//--1 读取qss文件
QFile
file(":/QPushButton.qss");
if (file
.open(QFile
::ReadOnly
))
{
QString qss
= knowChinese(file
.readAll());
setStyleSheet(qss
);
file
.close();
}
//--2 读取UTF-8的文件
QString Widget
::knowChinese(const QByteArray
&ba
)
{
QTextCodec
::ConverterState state
;
QTextCodec
*codec
= QTextCodec
::codecForName("UTF-8");
QString text
= codec
->toUnicode( ba
.constData(), ba
.size(), &state
);
if (state
.invalidChars
> 0)
{
text
= QTextCodec
::codecForName("GBK")->toUnicode(ba
);
}
else
{
text
= ba
;
}
return text
;
}
转载请注明原文地址:https://tech.qufami.com/read-24735.html