我为我的应用程序创建了翻译。我已经安装了加载了翻译文件的QTranslator
实例,它似乎正在工作,除了一个案例,只有那种情况。
有一个方法类,如下所示:
QString MultiEditorNumeric::getTabLabel()
{
return tr("Number");
}
lupdate
注意到该消息,我将其翻译并与lrelease
一起发布,但在运行时,该方法返回的消息仍为"Number"
。
我甚至修改了方法,因为我无法相信它:
QString MultiEditorNumeric::getTabLabel()
{
QString s = tr("Number");
qDebug() << s;
return s;
}
是的,这是确切的地方,数字无法翻译。调试消息不存在。
我在以.qm
后缀命名的文件下发布翻译。此文件将添加到我的项目资源中,并编译为二进制文件。我已经尝试从资源中删除qm文件并重新添加它,但它没有帮助。
我还能做什么?我可以检查什么?
答案 0 :(得分:1)
我的班级在类声明中没有Q_OBJECT
宏。我没有从lupdate
注意到它,因为我运行lupdate
的脚本正在清除来自lupdate
的所有邮件。我添加了Q_OBJECT
,它立即开始工作。