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