• 6606阅读
  • 8回复

【提问】关于其QT/e-3.3.4显示中文 [复制链接]

上一主题 下一主题
离线calf9007
 

只看楼主 倒序阅读 楼主  发表于: 2005-11-17
我用“QT国际化编程”可以在板子上显示中文,可不能显示从文件中读取的中文字符串,

如果设置:QGbkCodec* gbk=QTextCodec::codeForName(“GBK”);程序就死掉了

请问:这里的“GBK”库与操作系统有无关系,还有QTE库本身支持“GBK”?

我该如何处理,才能显示中文(只是提供给本地用户使用,无需国际化,只显示中文就可以了)呢?

谢谢!
离线angusliu

只看该作者 1楼 发表于: 2005-11-18
如果设置:QGbkCodec* gbk=QTextCodec::codeForName(“GBK”);程序就死掉了
可能是你编译的QTE库里不支持QTextCodec,返回的gbk为NULL

另外可以试试在程序里加上QFont的设置
离线calf9007

只看该作者 2楼 发表于: 2005-11-18
【提问】Re:【提问】关于其QT/e-3.3.4显示中文
谢谢你,请问怎么才能使QT/E库支持QTextCodec,我试着注释掉了qconfig-medium.h,qconfig-minimal.h,qconfig-small.h 中TextCodec相关的宏定义,可是还是不行?
你有什么建议么?
QFont Unicode设置过了,qt国际化可以显示中文!
离线angusliu

只看该作者 3楼 发表于: 2005-11-18
一般情况下,编译QTE时选择full应该就支持QTextCodec了
./configure -qconfig full ...
离线calf9007

只看该作者 4楼 发表于: 2005-11-19
还是不行,
QGbkCodec* gbk=QTextCodec::codeForName(“GBK”);程序就死掉了
可能是你编译的QTE库里不支持QTextCodec,返回的gbk为NULL
我觉得也有可能是找不到“GBK”字库,和嵌入式LINUX操作系统有关

请问:编译QT/E库时,有没有设置:寻找字库路径的环境变量?比如:LANGUAGE一类的,你知不知道 LC_ALL 这个环境变量?谢谢!
离线calf9007

只看该作者 5楼 发表于: 2005-11-21
编译的QTE库里不支持QTextCodec,返回的gbk为NULL,
   
我在codeForName()函数体内加了“printf()”语句,证明确实执行了codeForName()函数,

请问您还有什么建议呢?
离线angusliu

只看该作者 6楼 发表于: 2005-11-30
你用多用printf(),确定出错的地方,
如果你是用PC模拟环境,你用GDB调试
离线calf9007

只看该作者 7楼 发表于: 2005-12-01
谢, 问题解决了
是Glibc库的版本问题
离线jiancheng
只看该作者 8楼 发表于: 2006-01-16
请问Glibc库的版本有何问题?
快速回复
限100 字节
 
上一个 下一个