Qt学习笔记之QTranslator
QTranslator類為文本輸出提供國際化支持。
此類的一個對象包含一組從源語言到目標(biāo)語言的轉(zhuǎn)換。QTranslator提供了在翻譯文件中查找翻譯的功能。翻譯文件是使用Qt Linguist創(chuàng)建的。
QTranslator最常見的用法是:加載一個翻譯文件,使用QCoreApplication::installTranslator()安裝它,并通過QObject::tr()使用它。下面是一個使用QTranslator的main()函數(shù)示例:
int main(int argc, char *argv[]){QApplication app(argc, argv);QTranslator translator;// look up e.g. :/translations/myapp_de.qmif (translator.load(QLocale(), QLatin1String("myapp"), QLatin1String("_"), QLatin1String(":/translations")))app.installTranslator(&translator);QPushButton hello(QCoreApplication::translate("main", "Hello world!"));hello.resize(100, 30);hello.show();return app.exec();}注意:QTranslator必須在應(yīng)用程序的小部件之前創(chuàng)建。
大多數(shù)應(yīng)用程序?qū)⒂肋h不需要對該類執(zhí)行任何其他操作。該類提供的其他函數(shù)對于處理翻譯文件的應(yīng)用程序非常有用。
查找翻譯
可以使用translate()(作為tr()和QCoreApplication::translate() do)查找翻譯。
virtual QString?
translate(const char *context, const char *sourceText, const char *disambiguation = Q_NULLPTR, int n = -1) const
translate()函數(shù)有三個參數(shù):
上下文——通常是tr()調(diào)用者的類名。
源文本——通常是tr()的參數(shù)。
消除歧義—一個可選的字符串,幫助消除同一文本在同一上下文中的不同用法的歧義。
?
總結(jié)
以上是生活随笔為你收集整理的Qt学习笔记之QTranslator的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt学习笔记之QTextCodec
- 下一篇: C++11的for