Qtを使用していくつかの言語の名前をテキストとして表示する必要があるアプリケーションをプログラミングしています。システムロケールをes_ESに設定しました。そうすれば、私はスペイン語でいくつかの言語と国名を取得したいと思います。しかし、私は母国語で、または英語で取得することができます:システムロケール言語で言語/国名を取得する方法
QLocale lsystem = QLocale::system();
QLocale lswiss("de_CH");
qDebug()<<"system "<<lsystem.name() << lsystem.languageToString(lsystem.language()) << lsystem.nativeLanguageName();
qDebug()<<"swiss "<<lswiss.name() << lsystem.languageToString(lswiss.language()) << lswiss.nativeLanguageName();
このソースコードは、次のテキストを出力します。
20:17:09.229 [DEBUG]: system "es_ES" "Spanish" "español de España"
20:17:09.229 [DEBUG]: swiss "de_CH" "German" "Schweizer Hochdeutsch"
私が期待する何QLocale::languageToString()
方法はに名前を返すことができることです私のシステムのロケール言語ですが、そうではありません。私はスペイン語(español、alemán)で名前を取得したいが、私はそれを行う方法を知らない。
Qtの翻訳ユーティリティで各言語名を翻訳することなく、私が望むものを手に入れることはできますか?前もって感謝します。
これはQtでは不可能です。その情報を含むファイルを作成し、そこから読むことをお勧めします。 – eyllanesc