• 4555阅读
  • 0回复

如何翻译应用程序的简单教程---by jzj139 [复制链接]

上一主题 下一主题
离线jzj139
 
只看楼主 倒序阅读 楼主  发表于: 2007-06-18
— 本帖被 XChinux 执行加亮操作(2008-07-18) —
[原创]如何翻译应用程序的简单教程---by jzj139
    源代码如下:
#include <qapplication.h>
#include <qpushbutton.h>
#include <qtranslator.h>


int main( int argc, char **argv )
{
    QApplication app( argc, argv );

    QTranslator translator( 0 );//Creates a QTranslator object without a parent
    translator.load( "ttl_zh-cn", "." );//Try to load a file called ttl_zh-cn.qm
    app.installTranslator( &translator );//Add the translations from ttl_zh-cn.qm to the pool of translations

    QPushButton hello( QPushButton::tr( "Hello world!" ), 0 );

    app.setMainWidget( &hello );
    hello.show();
    return app.exec();
}

1.使用qmake -project生成.pro文件;
2.在.pro文件中加上如下语句:
TRANSLATIONS    = ttl_zh-cn.ts
3.运行如下命令:
lupdate ttl.pro
生成ttl_zh-cn.ts文件;(PS:.ts的名字来自“翻译源”(translation source))
4.运行如下命令:
linguist ttl_zh-cn.ts
这时候会弹出一个图形界面工具:
    1)单击左边窗口的QPushButton
    2)双击中间窗口的helloworld!这时会弹出一个对话框,在Translation下输入:你好世界!
    3)单击工具栏的Done and Next按钮(这个时候QPushButton的前面会变成绿色的对号)显示翻译完成
    4)然后File->Release,这个是生成.qm文件(.qm来自“QT消息”Qt message),保存到当前目录下
也可以使用命令release ttl_zh-cn.ts来生成.qm文件的。
    5)点击linguist“X”退出窗口,这个时候会提示保存ttl_zh-cn.ts文件,单击save,完成操作。
这一步的目的是把“你好世界!”来替代ttl_zh-cn.ts中的“unfinished”,这个只要了解就可以了,有兴趣的可以去看看QT参考文档。
5.运行如下命令:
qmake ttl.pro
6.运行如下命令:
make
7.运行如下命令:
./ttl
这个时候你会发现按钮是显示的是:“你好世界!”  而不是“helloworld!”

PS:lupdate和lrelease命令都可以带参数-verbose,这样会显示一些提示信息。这个 参数是可选的。
                                         
 
qt
快速回复
限100 字节
 
上一个 下一个