我原来方法是加入
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
或
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
就能显示,但现在我测试了不少demo都不能显示中文
- C/C++ code
#include <QApplication>#include <QTextCodec>#include <QLabel>int main(int argc,char *argv[]){ QApplication app(argc,argv); QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")); QLabel hello(QObject::tr("你好世界")); hello.setWindowTitle(QObject::tr("Qt中文显示")); hello.setGeometry(QRect(100,100,200,200)); hello.show(); return app.exec();}
Title的显示没问题,但Text 内容无显示 如果将UTF-8 改为 GB2312 则Titled 的显示为乱码 内容下依然无显示
还有个问题是如果我不加hello.setGeometry(QRect(100,100,200,200));
则QLabel 将无显示。
不知道如何解决这个问题
------解决方案--------------------
http://download.csdn.net/detail/shen_wei/4233328
你的代码编译。。你可以去下载看看!!!
------解决方案--------------------
我这里给你说一下0基础的安装顺序,以ubuntu 10.04来说:
1. 下载并安装ubuntu 10.04,安装时选择语言为简体中文
2. 启动系统后,应该立即更新系统,这是个好习惯,系统也会自动提示你更新,最好有点耐心比较耗时。
3. 安装GNU C++编译器
# sudo apt-get install g++
4. 下载最新的Qt SDK for linux,目前应该是QtSdk-offline-linux-x86-v1.2.1.run
5. 修改执行权限,并执行安装
# chmod a+x QtSdk-offline-linux-x86-v1.2.1.run
# ./QtSdk-offline-linux-x86-v1.2.1.run
按照这个方法装的Qt没有任何问题,呵呵