Qt的中文显示

因项目需要,在tabeWidget中显示汉字内容,乱码。解决办法如下:

在main.cpp中添加三行代码

QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));

QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));  

QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));  

注意#include <QTextCodec>

 

QTextCodec::setCodecForLocale(textc)

这个函数主要用于设置和对本地文件系统读写时候的默认编码格式。比如通过流读取一个文件时内容时的编码格式。或者通过qDebug()输出打印信息时的编码。

QTextCodec::setCodecForTr(textc)

主要是对tr函数传送的默认字串编码

setCodecForCStrings(textc)

这个函数主要用在用字符常量或者QByteArray构造QString对象时使用的默认编码方式

posted @ 2017-10-28 16:03  flytosea  阅读(351)  评论(0编辑  收藏  举报