注册 登录
编程论坛 QT论坛

QT显示中文的方法。

hackerjiang 发布于 2010-12-01 22:22, 2175 次点击
刚刚看到坛子里有人问为啥QT显示中文是方块?
答:因为没有选择 字符集 。

#include "QtGui"

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

使用上面那句话后就能正确显示中文了。

注:GB18030-2000是取代GBK1.0的正式国家标准。现在的PC平台都必须支持GB18030。弱弱的插一句,PSP也支持GB18030。




8 回复
#2
hackerjiang2010-12-01 22:23
沙发自己坐
#3
yangglemu2011-01-08 10:26
好好好
#4
草狼2011-05-31 10:47
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb18030"));
 这条也行,上面用tr显示中文  感觉不咋好,嘿嘿;
其中语言看你在什么系统就选什么,一般windows选(“gb18030”) ,linux选(“UTF-8”);


刚学QT 希望跟大家一起交流 本人QQ 568672129
#5
flyue2011-06-05 09:27
如果要同时支持中文,韩文,阿拉伯文,泰文,需要设置什么编码集?

UNICODE
#6
草狼2011-06-07 09:52
回复 5楼 flyue
貌似不用  直接TR扩起来就可以  。 只是单单为了显示中文的话,楼主的方法感觉不好(纯个人感觉)
#7
lucky5635912011-06-09 11:12
不是GB2312的?
#8
gotmony2011-06-23 19:51
如果你本机跑,用
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
使用本机的编码,如果你是网络编程还是UTF-8好点。
#9
不要再信我2011-10-31 20:17
以下是引用lucky563591在2011-6-9 11:12:32的发言:

不是GB2312的?
是啊?不是GB2312吗????
1