qt国际化与本地化中一个需要注意的地方


QT库在国际化和本地化方面做的很不错,使用其开发的软件在做软件的多语言版本的时候都非常的方便。

通常都是在编程中使用QObject::tr函数将所有的字符串都括起来,这样就很容易使用linguist来导出英文文本,并且制作翻译文件,然后只要在程序里合适的地方使用QTranslator将需要的翻译文件load进去,然后调用qApp->installTranslator(),程序就自然的更换了另外一种语言界面了。

 

然而,很多新手都会发现另外一个问题,那就是在文本框里按下右键,出现的不是期望的中文菜单,而是英文菜单,而在弹出打开文件或者选择目录的通用FileDialog的时候,出现的也是英文的信息和按钮文字。如何让这些地方的英文也能转换成合适的文字呢???

其实,QT已经为你做好了这个部分的工作。在QT目录里有一个translation目录,里面就有已经制作好的非常多的翻译文件,只要在你的程序里也将相应的翻译文件(*.qm)再使用一个新的QTranslator来load这个翻译文件然后调用qApp->installTranslator(),你就会发现,右键菜单和通用对话框也都全部都中文化啦。


你可能感兴趣的:(qt国际化与本地化中一个需要注意的地方)