当前位置: 代码迷 >> QT开发 >> QtCreator程序中显示中文,该怎么解决
  详细解决方案

QtCreator程序中显示中文,该怎么解决

热度:88   发布时间:2016-04-25 04:57:44.0
QtCreator程序中显示中文
我试过1、添加QTextCodec
2、改变tools->TextEdit->Behavior->Default encoding:UTF-8,
但是程序中显示的还是乱码,请教解方法

------解决方案--------------------
C/C++ code
#include <QtGui/QApplication>#include <QtCore/QTextCodec>#include <QDir>#include <QTranslator>#include "MainForm.h"int main(int argc, char *argv[]){    QApplication a(argc, argv);    QDir::setCurrent(QApplication::applicationDirPath());    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB18030"));    setupTranslator();    a.setApplicationName("中文程序");    TMainForm w;    w.show();    return a.exec();}
------解决方案--------------------
发布的时候需要带上。qt中的 plugins\codecs\qcncodecs4.dll
------解决方案--------------------
你使用QTextCodec::setCodecForTr(QTextCodec::codecForLocale());试试
希望对你有帮助
------解决方案--------------------
1. 楼主是在Linux下编码的还是在Windows下编码的?
2. 楼主的代码使用什么格式编写的?

如果是在Windows下,那么你的文件编码默认是GB的

建议楼主用UTF-8来编写代码,具体的设置方式是:

把Qt Creator里的“工具”->“选项”->“文本编辑器”->“行为”->“文件编码”->“默认编码”改为UTF-8

但你现有的工程可能已经是GB2312的了,所以,如果文件还不多的话,那么可以重新建一个工程,把原来文件用文本编辑器打开,把内容拷贝粘贴过去。注意,是把内容拷过去,而不是生拷文件。

这样做一遍,以后你就方便了。
------解决方案--------------------
好吧,还是把字体库拷到QtSDK\Simulator\Application\fonts里试试吧
------解决方案--------------------
老实说,我不是很喜欢这个模拟器,而且我在开发时很少使用模拟器,虽然我也在为手机开发程序。

我在我们之前的讨论里说过,我没有使用Qt Quick Components,其中一个最重要的原因是,它不能跨平台。

它需要import com.nokia.symbian 1.1 或 import com.nokia.meego 1.0

而这直接导致了我必须在模拟器或真机上才能调试,虽然可以,但我真不觉得它是方便的。

所以,我使用了“全平台”,大部分的编码和调试是在PC上完成的,只有像网络以及与电话相关的部分才使用联机调试。


------解决方案--------------------
选择全平台的UI也可以啊,并不代表它不能运行在手机上,相反它的适用范围更广阔。

所谓Symbian的Qt Quick组件/MeeGo的Qt Quick组件只不过是提供了更多平台一致性的UI组件而已。

当然,鉴于你的这个应用可能需要很多UI交互元素,所以,还是用组件吧,会简单些。