gpt4 book ai didi

c++ - 使用硬编码文本向 Qt 应用程序添加多语言选项

转载 作者:行者123 更新时间:2023-11-30 03:27:33 38 4
gpt4 key购买 nike

我是 Qt 的初学者。我有一个使用 Qt 设计的应用程序,它有多个窗口,每个窗口都包含几个带有硬编码文本的标签。为此应用程序添加多语言支持的最简单方法是什么?我应该使用哪些内置的 Qt 对象/函数?

我目前的想法是创建一个单独的 xml 文件,其中包含一种语言的所有标签的文本。然后一旦用户从菜单中选择语言图标,加载相关的 xml 文件。但我不知道该怎么做。任何帮助将不胜感激!

更新:我已尝试实现给定的示例 here .但它抛出以下错误,我无法修复它。 “class Ui::MainWindow”没有名为“menuLanguage”的成员

QActionGroup* langGroup = new QActionGroup(ui->menuLanguage);

最佳答案

尝试 Qt Linguist :

我给你举了一个简单的例子:

.pro

TRANSLATIONS += translation_fa.ts

.h

#include <QTranslator>
QTranslator translator;

.cpp

if(translator.load("E:/Qt/Linguist/linguist/translation_fa.qm"))
qDebug()<<"successfully load qm file.";
else
qDebug()<<"problem in load qm file.";


// change language to second language
qApp->installTranslator(&translator);

// change language to default language
qApp->removeTranslator(&translator);

不要忘记使用 Qt Linguist Tools .

image

这是您关于 github download here. 问题的示例项目

关于c++ - 使用硬编码文本向 Qt 应用程序添加多语言选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47283878/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com