• 8260阅读
  • 7回复

[提问]syszuxpinyin中文输入异常 [复制链接]

上一主题 下一主题
离线angy670
 
只看楼主 倒序阅读 楼主  发表于: 2012-03-21
关键词: SYSZUYPINYIN;
syszuxpinyin输入法移植进去后跑demo,碰到选择中文输入后上面的中文字选择按钮上都是空白,并没有显示汉字情况。但其他应用程序显示中文正常,如下图:




main.cpp中我加入了这几行话:
     gemfield.setFont(QFont("unifont"));


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


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


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



gb2312改为gbk, 那些字选择按钮一样,还是空白
gb2312改为UTF-8,字选择按钮有显示,如下图:

怎么解决啊??

离线boymaster

只看该作者 1楼 发表于: 2012-03-22
#define G2U(s) ( QTextCodec::codecForName("GBK")->toUnicode(s) )

建议用这个函数转换一下,试试吧~~~

char szHZ[] = "中";
QString str = G2U(szHZ);
离线yurenjimi

只看该作者 2楼 发表于: 2012-03-22
看截图,有点眼熟啊
hello world!!
离线shiyuse
只看该作者 3楼 发表于: 2012-03-22
在运行syszuxpinyin输入法demo程序时,运行时加上 -qws -font unifont这些参数就是可以
离线angy670
只看该作者 4楼 发表于: 2012-03-23
谢谢楼上群人的回答,问题已经解决,但还没搞明白就是
//QTextCodec::setCodecForCStrings(QTextCodec::codecForName("gb2312"));
把这句去掉就可以了
离线leisureg1

只看该作者 5楼 发表于: 2012-03-26
楼主,问一下,你的这个键盘怎么整的
离线yanzi1225627
只看该作者 6楼 发表于: 2012-08-10
中文乱码的问题终于解决了,的确是不能设CStrings,参见我的博客http://blog.csdn.net/yanzi1225627/article/details/7852326
离线liu6517123
只看该作者 7楼 发表于: 2012-09-12
使用iconv将syszux下面的文件字库转化为UTF-8格式,在main.cpp中直接使用UTF-8格式,就可以正常显示了。
快速回复
限100 字节
 
上一个 下一个