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:不要我教你怎么运行程序吗哈哈

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值