qt显示中文
2012-12-05 11:35
1151 查看
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
原文:http://hi.baidu.com/whl0630/item/af075951e56cf9c89f26674d
QTextCodec*pCodec=QTextCodec::codecForName("System");//获取系统字体编码
QTextCodec::setCodecForLocale(pCodec);
QTextCodec::setCodecForCStrings(pCodec);
QTextCodec::setCodecForTr(pCodec);
如果你的操作系统当前是中文环境的话,就可以显示中文。
2,通过第1步的操作就可以在文本中显示中文了,但是还不能在内置的QMessageBox按钮上面显示中文。
该怎么办呢?
(1)从QT安装目录下面将文件“qt_zh_CN.qm”复制一份到你的项目目录下。
例如,我是从“D:\QtSDK\Desktop\Qt\4.7.3\msvc2008\translations”目录下复制的“qt_zh_CN.qm”文件。
你的项目目录指你项目的.pro文件所在的目录。
(2)在项目目录中新建一个文本文件,输入如下内容:
<RCC>
<qresource prefix="/">
<file>qt_zh_CN.qm</file>
</qresource>
</RCC>
保存后,将该文本文件的后缀名由txt改为qrc,表明这是资源文件。
(3)在Qt Creator中将上述文件加到你的项目中。
(4)修改代码如下,表示要加载相应的资源文件。
QTranslator oTranslator;
oTranslator.load(":/qt_zh_CN"); // 注意此处字符串以“:/”开头,后接的字符串是刚才复制的qm文件的名字
QApplication oApp(argc, argv);
oApp.installTranslator(&oTranslator);
(5)重新编译、运行程序即可。
============================================
运行效果如下:
![](http://hiphotos.baidu.com/whl0630/pic/item/c05d2711f01ec0e96438db7c.jpg)
后记:当时笔者希望QMessageBox的按钮能中文显示,在网上搜索发现有许多同学有相同的问题,然而网上给出的答案却要么是本文叙述的第1个问题的答案,要么就是没有说清楚。所以,专门在这里贴出来,希望能帮到大家。
另:
头文件添加
在main函数添加
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
原文:http://hi.baidu.com/whl0630/item/af075951e56cf9c89f26674d
Qt 中文显示 QMessageBox按钮中文显示
1,QT中如何显示中文呢?QTextCodec*pCodec=QTextCodec::codecForName("System");//获取系统字体编码
QTextCodec::setCodecForLocale(pCodec);
QTextCodec::setCodecForCStrings(pCodec);
QTextCodec::setCodecForTr(pCodec);
如果你的操作系统当前是中文环境的话,就可以显示中文。
2,通过第1步的操作就可以在文本中显示中文了,但是还不能在内置的QMessageBox按钮上面显示中文。
该怎么办呢?
(1)从QT安装目录下面将文件“qt_zh_CN.qm”复制一份到你的项目目录下。
例如,我是从“D:\QtSDK\Desktop\Qt\4.7.3\msvc2008\translations”目录下复制的“qt_zh_CN.qm”文件。
你的项目目录指你项目的.pro文件所在的目录。
(2)在项目目录中新建一个文本文件,输入如下内容:
<RCC>
<qresource prefix="/">
<file>qt_zh_CN.qm</file>
</qresource>
</RCC>
保存后,将该文本文件的后缀名由txt改为qrc,表明这是资源文件。
(3)在Qt Creator中将上述文件加到你的项目中。
(4)修改代码如下,表示要加载相应的资源文件。
QTranslator oTranslator;
oTranslator.load(":/qt_zh_CN"); // 注意此处字符串以“:/”开头,后接的字符串是刚才复制的qm文件的名字
QApplication oApp(argc, argv);
oApp.installTranslator(&oTranslator);
(5)重新编译、运行程序即可。
============================================
运行效果如下:
![](http://hiphotos.baidu.com/whl0630/pic/item/c05d2711f01ec0e96438db7c.jpg)
后记:当时笔者希望QMessageBox的按钮能中文显示,在网上搜索发现有许多同学有相同的问题,然而网上给出的答案却要么是本文叙述的第1个问题的答案,要么就是没有说清楚。所以,专门在这里贴出来,希望能帮到大家。
另:
头文件添加
#include<QtCore/qtextcodec.h>
在main函数添加
相关文章推荐
- Qt4 显示中文(win7/linux/ARM测试成功)
- Qt中文显示
- QT 在lineEdit中显示中文乱码
- 解析 Qt 字库移植并能显示中文 (上篇)
- 使QT内建的对话框文字显示为中文 window7+vs2010+qt
- Qt之中文显示(QMessageBox、QLine…
- qt5.5显示中文
- qt在板子上字很小与中文显示的解决方法
- Qt5.5.0在Linux下静态编译(加上-fontconfig编译项才能显示中文) good
- GB2312、GBK和UTF-8三种编码以及QT中文显示乱码问题
- Qt QTableWidget 最后一览自适应宽度 、QTableWidgetItem 文字 居中对其、 显示中文
- Qt 显示中文代码
- Qt中文显示
- qt中文显示乱码(2)
- Qt4.7在ARM开发板上如何设置中文显示
- 自学QT之实现QMessageBox的按钮中文显示
- 【Qt开发】解决Qt5.7.0中文显示乱码的问题
- Qt界面显示中文乱码问题
- QT中的中文显示问题
- Qt 中显示中文