回复: qt4下输入法的问题
#11 [haoyunp 08-26 11:35]
郁闷了好长时间了,现在我开始更改我的程序了。再次感谢
#12 [haoyunp 08-26 17:24]
还是有点问题
syszuxpinyin编码问题
syszuxpinyin的编码应该是GB2312,而我qt4.5的应用程序中用的是UTF-8才能显示中文,要想应用这个输入法是不是应该转换编码呀?
在我的应用程序中:
QTextCodec::setCodecForTr( QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB18030"));
才能正常显示中文,但是输入法就不能显示中文了。
如果QTextCodec::setCodecForTr( QTextCodec::codecForName("GB2312"));,则输入法可以,程序中不能显示中文。应该怎么解决呢?
#13 回 12楼(haoyunp) 的帖子 [wxj120bw 08-26 20:57]
你的qt程序有翻译过后的文件吗(qm文件) 将文件转换成gb2312(gbk)编码尝试下 在QTextCodec::setCodecForTr( QTextCodec::codecForName("GB2312"));这种情况下
#14 回 12楼(haoyunp) 的帖子 [wangrunmin 03-26 20:32]
请问你这个汉字不显示的问题解决了么
#15 [yanzi1225627 08-07 19:20]
有在弄这个问题的么??指点一下我把,我编译的时候出现这个问题:
widget.o: In function `Widget::on_inputButton_clicked()':
widget.cpp:(.text+0x2124): undefined reference to `SyszuxIM::SyszuxIM()'
moc_syszuxim.o: In function `SyszuxIM::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)':
moc_syszuxim.cpp:(.text+0xa0): undefined reference to `SyszuxIM::confirmString(QString)'
moc_syszuxim.o:(.rodata+0x5c): undefined reference to `SyszuxIM::~SyszuxIM()'
moc_syszuxim.o:(.rodata+0x60): undefined reference to `SyszuxIM::~SyszuxIM()'
moc_syszuxim.o:(.rodata+0x8c): undefined reference to `SyszuxIM::updateHandler(int)'
moc_syszuxpinyin.o: In function `SyszuxPinyin::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)':
moc_syszuxpinyin.cpp:(.text+0x128): undefined reference to `SyszuxPinyin::buttonClickResponse(int)'
moc_syszuxpinyin.o:(.rodata+0x74): undefined reference to `SyszuxPinyin::~SyszuxPinyin()'
moc_syszuxpinyin.o:(.rodata+0x78): undefined reference to `SyszuxPinyin::~SyszuxPinyin()'
moc_syszuxpinyin.o:(.rodata+0x154): undefined reference to `non-virtual thunk to SyszuxPinyin::~SyszuxPinyin()'
moc_syszuxpinyin.o:(.rodata+0x158): undefined reference to `non-virtual thunk to SyszuxPinyin::~SyszuxPinyin()'
collect2: ld returned 1 exit status
make: *** 错误 1