vs2013使用qt Linguist以及tr不生效问题

一、qt Linguist(语言家)步骤流程

1、创建翻译文件,在qt选项中

2.选择对应所需的语言,得到.ts后缀的翻译文件

3.创建.pro文件,并将.ts配置在.pro文件中

3.使用qt Linguist 打开创建好的以.ts为后缀的翻译文件,按图所示步骤将每一项内容配置好其翻译内容。

4.发布ts后缀的文件,得到qm后缀的文件

5.在代码中配置qm文件

QString sLanguage = "./bmpviewer_zh.qm";//设置翻译语言包(中文)
QTranslator translator;
if (translator.load(sLanguage))
{
	qApp->installTranslator(&translator);
	ui->retranslateUi(this);
}

        以上为空间文本的翻译配置,若是需要对消息盒子的信息进行多语言控制,需要在字符串其加上tr,这样即可在.ts文件中对其翻译进行配置。

tr("需要翻译的文本")

二、tr不生效问题

        在使用过程中发现tr对应字符串翻译不生效,网上大部分说明为,需要在派生类中加QObject宏。但是在我确认类中已加入QObject后,代码仍不生效。原翻译文件设置函数代码。

void MainWindow::setLanguage(const QString& sLanguage)
{
    QTranslator translator;
	if (translator.load(sLanguage))
	{
		qApp->installTranslator(&translator);
		ui->retranslateUi(this);
	}
}

偶然间查阅到QObject::tr无法获取翻译文本_qobject::tr 不起作用-CSDN博客

知道了QTranslator 不能为局部变量,将变量放到类中,试了一下还真行。

相关推荐

  1. spring boot集成redis,以及配置database生效问题

    2024-05-25 19:32:27       26 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-25 19:32:27       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-25 19:32:27       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-25 19:32:27       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-25 19:32:27       20 阅读

热门阅读

  1. 微信小程序自定义头部

    2024-05-25 19:32:27       9 阅读
  2. Git 使用手册

    2024-05-25 19:32:27       10 阅读
  3. npm 上传包

    2024-05-25 19:32:27       9 阅读
  4. node与npm版本对应表

    2024-05-25 19:32:27       11 阅读
  5. MySql

    MySql

    2024-05-25 19:32:27      11 阅读
  6. 常用神经网络-ANN/CNN/RNN/GAN/Transformer

    2024-05-25 19:32:27       9 阅读
  7. Nginx进行TLS降级

    2024-05-25 19:32:27       9 阅读
  8. ClickHouse简介+数据类型篇

    2024-05-25 19:32:27       13 阅读
  9. 机器学习中的时卷积神经网络

    2024-05-25 19:32:27       10 阅读
  10. 【Python】scikit-learn 常用算法模型

    2024-05-25 19:32:27       11 阅读