第二章:嵌入式QT --多语言

版权声明:引用请注明出处 https://blog.csdn.net/quange_style/article/details/71254995

嵌入式QT 常常需要支持多种语言动态切换,而QT在这方面很容易就可以实现
需要注意的几个点:
1、文件编码统一为UTF-8
2、要翻译的内容用QObject::tr()函数包括起来。
3、代码里面的内容最好是用英文来写。

步骤:
1、在pro 文件加入
TRANSLATIONS+=language/qt_gui_zh_CN.ts
TRANSLATIONS+=language/qt_gui_en_US.ts
等要翻译的中文或英文语言包

2、在qt creator 下 工具->外部->Qt语言专家->更新发布
就会生成qt_gui_zh_CN.ts 和qt_gui_en_US.ts文件

3、用qt 工具linguist.exe 软件打开ts文件,并且在里面编辑对应的语言翻译

4、在qt creator 下 工具->外部->Qt语言专家->发布翻译
即可生成qt_gui_zh_CN.qm 和qt_gui_en_US.qm文件

5、在代码工程里面导入语言文件

    QApplication a(argc, argv);
    QTranslator translator;
    QString    QmName = "qt_gui_zh_CH.qm";
    if(Language==Lan_zh_CN)
    {
         QmName = "qt_gui_zh_CH.qm";
    }
    else if(Language==Lan_en_US)
    {
         QmName = "qt_gui_en_US.qm";
    }
    if(translator.load(QtLanguagePath+QmName))
        a.installTranslator(&translator);
    dvrmain Dvrmainwindow;
    Dvrmainwindow.show(); 
	int ret_val;
	ret_val=a.exec();		
	return ret_val;

猜你喜欢

转载自blog.csdn.net/quange_style/article/details/71254995