查看完整版本: [-- VS2015下QTextBroswer显示汉字乱码 --]

QTCN开发网 -> Qt中文处理 -> VS2015下QTextBroswer显示汉字乱码 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

lieber 2019-05-09 16:24

VS2015下QTextBroswer显示汉字乱码

因为添加三方库需要,从自带的MingW转到VS中,按照百度到的方法,文件编码存为"UTF-8带签名",添加#pragma execution_character_set("utf-8") ,控件已经没有乱码,编译器也不报错。
但是通过TextBroswer不断获取操作信息,显示在界面上(代码如图),就乱码了......
[attachment=20294][attachment=20295]

心态爆炸,不知道怎么解决了

青空飞羽 2019-05-10 10:41
你传入的信息是UTF-8编码的吗

lieber 2019-05-10 16:42
试了setText(str.toUtf8()),还是不行
奇怪的是当前类里直接setText()是正常的,从另外类里传来的QString就不行,如下图(下面乱码的TextBroswer我设置了无边框)
[attachment=20308]

backstree 2019-09-02 10:41
#ifdef WIN32  
#pragma execution_character_set("utf-8")  
#endif
用这个试试,我一直都是用这个

staryingling 2019-10-19 14:00
//文字编码转换,解决界面显示中文乱码
    std::string DispGBKCharacter(const char *s)
    {
        QString Tip(tr(s));
        QTextCodec *gbk = QTextCodec::codecForName("GB2312");
        std::string TipStr = gbk->fromUnicode(Tip).data();
        return TipStr;
    }
可以试下用这种方法,我是用着这种解决乱码的


查看完整版本: [-- VS2015下QTextBroswer显示汉字乱码 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled