当我changeEvent(QEvent* event)
使用接收类型 event->type() == QEvent::LanguageChange
时,如何获取有关我的应用程序中的新语言的信息?
问问题
959 次
2 回答
1
您可以将翻译后的字符串与其已知翻译进行比较:
void changeEvent(QEvent *event)
{
if (event->type() == QEvent::LanguageChange) {
QString translated = QCoreApplication::translate("some context", "Button");
if (translated == "Button")
// language is English
else if (translated == "Кнопка")
// language is Russian
...
}
}
于 2015-04-02T09:52:54.637 回答
0
Qt 没有任何对象来表示应用程序语言。所以你应该自己实现它。
通常changeEvent(QEvent* event)
与类型有关QEvent::LanguageChange
,installTranslator(QTranslator*)
因此您应该知道加载到翻译器并将其存储在本地的女巫语言。
于 2015-04-02T12:57:09.293 回答