Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1247332
  • 博文数量: 261
  • 博客积分: 4196
  • 博客等级: 上校
  • 技术积分: 3410
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-17 17:05
文章分类

全部博文(261)

文章存档

2018年(1)

2017年(22)

2016年(2)

2015年(8)

2014年(27)

2013年(40)

2012年(161)

分类: LINUX

2013-06-14 13:54:02

lupdate可以把.h, .cpp, .ui中需要翻译的字符串抽出来形成.ts文件
然后用linguist翻译
用lerealse生成.qm

1.修改*.pro,在其中添加 TRANSLATIONS = XXX. ts
或是TRANSLATIONS += XXX. ts
如果要生成多个可以用:
                      TRANSLATIONS =lang_en.ts \
                                        lang_zh.ts \
                                        lang_la.ts
2.lupdate *.pro,生成XXX. ts
3.使用linguist打开XXX. ts,进行翻译,翻译结束后,保存成为qm格式的。File->Release As或者是翻译结束后,使用命令,lrelease XXX. ts,生成qm文件。(Return:  中type="obsolete"为隐藏属性,如果需要此项编进qm中则需要去掉这个属性)
ts文件为类似xml的文本文件,不一定非要linguist软件才能打开,编辑。可以用其他编辑器编辑,只要按照它规定的格式即可。
4.在程序中加入。
    QTranslator translator;
    translator.load("xxx");  
    app.installTranslator(&translator);

其中load的是XXX.qm中的不包含后缀名的文件名(即XXX)。

阅读(3095) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~