关闭

QT/E 2.3.7 国际化步骤

标签: 工具makefilesignalqt工作
682人阅读 评论(0) 收藏 举报
分类:

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

 
0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:214667次
    • 积分:2356
    • 等级:
    • 排名:第15769名
    • 原创:17篇
    • 转载:126篇
    • 译文:0篇
    • 评论:16条
    最新评论
    Program Language Website