如何在基于 Qt 的应用程序中支持多种语言

Posted

技术标签:

【中文标题】如何在基于 Qt 的应用程序中支持多种语言【英文标题】:How to support multiple language in Qt Based Application 【发布时间】:2016-02-22 06:53:04 【问题描述】:

我正在尝试开发一个基于 Qml 的 QT 应用程序,它将支持多种语言。在应用程序中,将有一个下拉列表,从中选择语言的整个语言系列将被更改。任何人都可以帮助我给出如何进行的想法?

有什么例子吗? QTranslator() 是不是方便?

【问题讨论】:

【参考方案1】:

Qt 的本地化系统有据可查:Internationalization with Qt

只需使用QObject(或QML 中的qsTr())的tr() 方法将文本直接放入C++ 代码中。还有一些工具(lupdate 和 lrelease)来生成翻译文件。我建议阅读文档,这很容易。

一些有用的链接:

Hello tr: 和例子 Qt Linguist manual

【讨论】:

【参考方案2】:

QTranslatorQt UI 配合得很好,因为您可以使用 languageChanged() 信号来更新 UI。 QML 无法做到这一点。

查看QML WiKi,这是推荐的解决方法(目前!)。

【讨论】:

以上是关于如何在基于 Qt 的应用程序中支持多种语言的主要内容,如果未能解决你的问题,请参考以下文章

Android:如何在build.gradle中获取资源字符串以支持多种语言的多种口味?

如何在 ext 移动应用程序中使用多种语言?

QT不同平台对线程如何支持和实现

Qt5 http协议 获取网页数据

QT不同平台对线程如何支持和实现

Qt/Embedded 简介