C++ I';我试图在Qt中翻译我的应用程序,但出现了一些问题,没有结果
因此,我制作了一个*.qm文件,通过QLinguist进行翻译。现在我试图通过点击按钮来翻译程序,但什么也没发生 这是文件层次结构C++ I';我试图在Qt中翻译我的应用程序,但出现了一些问题,没有结果,c++,qt,qt5,qtranslate,C++,Qt,Qt5,Qtranslate,因此,我制作了一个*.qm文件,通过QLinguist进行翻译。现在我试图通过点击按钮来翻译程序,但什么也没发生 这是文件层次结构 问题是,您必须放置生成文件的路径,在您的示例中是翻译/chApp_ru.qm,因为这是chApp_ru.ts的转换,而后一个文件以相对路径作为参考: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS> <TS version="2.1" language="ru_RU"> &
问题是,您必须放置生成文件的路径,在您的示例中是
翻译/chApp_ru.qm
,因为这是chApp_ru.ts
的转换,而后一个文件以相对路径作为参考:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ru_RU">
<context>
<name>ChatWindow</name>
<message>
<location filename="../chatwindow.ui" line="14"/>
<location filename="../chatwindow.ui" line="266"/>
<source>chApp</source>
<extracomment>by tia</extracomment>
<translation></translation>
</message>
[...]
输出:
我已经测试了代码,它显示了良好的效果。可能错误在代码的另一部分,请您通过github、驱动器、dropbox或类似工具共享代码。@Eylandesc此处是我的github(克隆聊天文件夹)的链接@Eylandesc如果您发现有什么东西,请在此处写入或建议在github上请求拉取。@m7913d俄语one。实际上,它在.ts文件中,而.qm文件是由lrelease自动生成的
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ru_RU">
<context>
<name>ChatWindow</name>
<message>
<location filename="../chatwindow.ui" line="14"/>
<location filename="../chatwindow.ui" line="266"/>
<source>chApp</source>
<extracomment>by tia</extracomment>
<translation></translation>
</message>
[...]
void ChatWindow::on_actionRussian_triggered()
{
translator.load(":/Translations/chApp_ru.qm");
qApp->installTranslator(&translator);
ui->retranslateUi(this);
}