Steven.Leong的专栏

我的学习生涯

QT/E 2.3.7 国际化步骤

 QT/E 2.3.7 国际化步骤


作者:海进 2005.12.23
基本的要求是你手头上有一个编译成功的还没有国际化的工程,其中的文件有(以hello为例):hello.cpp,hello.h,main.cpp和Makefile,把三个需要用的工具cp到当前的工程目录中,它们是lupdate,lrelease和linguist.

Step1:做好以上准备工作以后,修改main.cpp,加入#include<qtranslator.h>,并且把需要翻译的字符用QObject::tr()括起来,我的main.cpp是这样的:
int main( int argc, char **argv )
{
QApplication a(argc,argv);
QFont font1("unifont",16); //***重要
a.setFont(font1); //***重要
QTranslator *translator=new QTranslator(0); //***重要
translator->load("lang_zh.qm","."); //载入翻译文件为lang_zh.qm,这个是用lrelease工具生成的
a.installTranslator(translator); //***重要

QString s;
for ( int i=1; i<argc; i++ ) {
s += argv[i];
if ( i<argc-1 )
s += " ";
}
if ( s.isEmpty() )
s =QObject::tr("Hello, World");
Hello h( s );
h.setCaption(QObject::tr("my first qt project!"));
QObject::connect( &h, SIGNAL(clicked()), &a, SLOT(quit()) );
h.setFont(font1); //字体都设成font1
h.setBackgroundColor( Qt::white ); // default bg color
a.setMainWidget( &h );
h.show();
return a.exec();
}

Step2:修改hello.pro工程文件,在最后加入一个条目:
TRANSLATIONS = lang_zh.ts

Step3:用lupdate工具生成lang_zh.ts文件,命令为: [root@ding example]# ./lupdate hello.pro

Step4:用linguist工具进行翻译,就是点击相应的条目,打入汉字而已 ,命令为:[root@ding example]# ./linguist lang_zh.ts ,翻译完以后,点击保存就是拉

Step5:用lrelease工具生成hello.qm ,命令为[root@ding example]# ./lrelease hello.pro

Step6:make

Step7:不要我教你怎么运行程序吗哈哈

 
阅读更多
个人分类: QT/E
想对作者说点什么? 我来说一句

Qt Embedded开发环境搭建----详解

jun2ran jun2ran

2009-09-09 14:32:00

阅读数:1606

没有更多推荐了,返回首页

不良信息举报

QT/E 2.3.7 国际化步骤

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭