本文主要是介绍QT 如何让多语言翻译变得简单,提高效率?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一.QT多语言如何翻译的?
在QT的多语言翻译过程中,分为两个步骤:第一步生成ts文件,第二步将ts文件翻译为qm文件。如果我们在需要多语言的情况下,qml经常使用qstr或者qwidget中使用tr等等,遍布许多个文件夹,在需要更新新的翻译时会很麻烦。整个工程收索并修改,效率十分低下。这里提供一个小技巧。
二.qml下我们将所有需要翻译的字段放入单独的qml文件中,Translate.qml
pragma Singletonimport QtQml 2.14
import QtQuick 2.15QtObject{property string app_Cancel: qsTr("Cancel")property string app_OK: qsTr("OK")}
三.qwidget下我们将翻译的字段放入单独的.h文件中,translate.h
#pragma once
#include <QObject>
#include <QDebug>class Translate : public QObject
{Q_OBJECT
public:static Translate * instance() {if( m_trans == nullptr ){m_trans = new Translate ();}return m_trans;}const QString helloWord = QObject::tr("hello word");
}
四.其他文件需要翻译的地方调用
qml: T
这篇关于QT 如何让多语言翻译变得简单,提高效率?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!