PyQt5での国際化とローカライゼーションのサポートはどうやって実装しますか?
PyQt5で国際化とローカリゼーションのサポートを実装するには、以下の手順に従うことができます。
- Qt Linguistツールを使用して翻訳ファイルを作成する。
- プロジェクトでpylupdate5コマンドを使用して、翻訳が必要なテキストが含まれた.tsファイルを生成します。
- Qt Linguistツールを使用して.tsファイルを開き、テキストを1つずつ翻訳して.qmファイルとして保存してください。
- PythonのコードでQTranslatorクラスを使用して翻訳ファイルをロードする。
- import文のQtCoreから QTranslator をインポートします。
アプリケーションをsys.argvで初期化します。
translatorにQTranslatorオブジェクトを作成します。
translator.loadで’translation_fr.qm’をロードします。
app.installTranslator(translator)でtranslatorをアプリケーションにインストールします。 - UIコンポーネントに翻訳が必要なテキストを追加します。
- 自己のラベルをQLabel(self.tr(“Hello World”))に設定する。
- ユーザーの選択した言語設定に応じて、対応する翻訳ファイルを読み込むことができます。
- import locale
locale.setlocale(locale.LC_ALL, ”) # ユーザーのロケール設定を取得
lang = locale.getdefaultlocale()[0]
translator = QTranslator()
translator.load(f’./translations/{lang}.qm’)