看前面黑咚咚,待俺上前杀它个干干净净。。。

 

Qt程序源码中,中文常量字符串问题及翻译家的使用

    在Windows7下使用Qt creator开发程序,想直接在源代码中使用中文字符串常量,源码是utf8的,保持utf8是便于迁移到linux,VC编译器总是报错,串中有换行符,怪异的是如果恰好串只有两个中文字符时,一切都是那么美好,多了,VC编译器就会让你痛苦了。
    经过一番google,我总结了解决问题的原则:
    绝对不要在源码中使用中文字符串常量。
    那要显示的中文怎么做?用Qt Linguist.

下面是方法:


第一步:打开
.pro文件,在最后面加入一行

TRANSLATIONS = cn.ts

可以自由命名右边的.ts文件

 

第二步:选择菜单:工具/外部/Qt翻译家/更新翻译(lupdate)

此时,系统将在.pro文件所在目录生成cn.ts文件

 

第三步:打开cn.ts文件,注意是用菜单:打开文件,用...。这种方式,在对话框中选择

Qt Linguist

 

第四步:在Qt Linguist中,汉化找到的源代码中的字符串常量。

 

第五步:完成汉化后,保存并选择【发布】。系统会在cn.ts文件所在目录生成cn.qm文件。

第六步:把汉文件文件添加到,项目资源中。打开.qrc文件,添加cn.qm文件

/tr

     cn.qm

 

 

第七步:使用汉化结果. 在主窗口显示前,应用实例创建后安装翻译器。

QApplication a(argc, argv);

 

QTranslator translator;

 

translator.load(":tr/cn.qm");

a.installTranslator(&translator);

 

经验:有些时候明明已经翻译了,程序还是不生效,此时你可以选择【清理项目】后再次构建,试一下。

posted on 2013-05-10 16:09 山城,山 阅读(2276) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

统计

常用链接

留言簿

随笔分类

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜