0

我正在做一个新项目,我需要为一家停车场公司开发一个简单的基于桌面的 Qt 应用程序。这个应用程序实际上应该驻留在停车场入口和出口处的 Linux 机器上。

现在我真正的问题是使这个应用程序多语言。现在我正在使用 Qt 4.8.6 并且已经阅读了以下链接上的某些文档

http://doc.qt.io/qt-4.8/linguist-manual.html

http://doc.qt.io/qt-4.8/linguist-translators.html

由于我的应用程序 UI 非常简单,没有复杂的短语或需要翻译的大量数据,因此我正在寻找上述两个链接中建议的替代方案。

我要求专家建议我可以采用的最佳替代方案。

如果这是一个好主意,请告诉我“拥有一个可以与 c++ 逻辑交互的 Qt Web 应用程序。这样我就可以在运行时轻松翻译网页(就像在网页上使用谷歌翻译器一样简单)&将它放在 Qt 窗口中”

请提出实现这一目标的最佳方法。

4

1 回答 1

1

我建议使用 QTranslator,如:

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

    QTranslator qtTranslator;
    qtTranslator.load("qt_" + QLocale::system().name(),
            QLibraryInfo::location(QLibraryInfo::TranslationsPath));
    app.installTranslator(&qtTranslator);

    QTranslator myappTranslator;
    myappTranslator.load("myapp_" + QLocale::system().name());
    app.installTranslator(&myappTranslator);

    // You app runs here

    return app.exec();
}

翻译将存储在 ts 文件中,可以通过 lupdate / lrelease 工作流程生成,包括 Qt 框架提供的所有工具。

于 2017-01-17T12:15:56.037 回答