ローカライズされた文字列ディクショナリを作成する

ダイアログボックスなど、実行時に表示されるオブジェクトの文字列をローカライズするには、文字列ディクショナリファイルにカスタムエントリを追加し、「ローカライズされた文字列を取得」ノードを使用して文字列をプログラム的に取得します。

実行時に表示されるオブジェクトをローカライズするには、まず「文字列をエクスポート」を使用して文字列ディクショナリファイルを生成し、文字列ディクショナリファイルのコピーを作成し、文字列ディクショナリファイルの言語を示す新規フォルダに保存します。新規フォルダは、プロジェクトフォルダ内の元のディクショナリファイルフォルダと同じ場所に、標準のMicrosoftロケール名 (en-USまたはzh-CNなど) を使用した名前で保存する必要があります。「文字列をエクスポート」は、エディタのデフォルト言語のフォルダ内のすべての既存のディクショナリを上書きします。既存のディクショナリを維持するには、既存のディクショナリファイルのコピーを別の場所に保存します。ローカライズする各文字列のエントリを含む独自の文字列ディクショナリファイルを作成することもできますが、このファイルは、「文字列をエクスポート」が生成するディクショナリと同じ構文とファイル拡張子を使用する必要があります。

メモ オブジェクトラベルや説明など、アプリケーションのほとんどのオブジェクトは、カスタムディクショナリエントリを使用せずにローカライズできます。これらのタイプのオブジェクトをローカライズするには、ローカリゼーション用に文字列をエクスポートする」を参照してください。
実行時に表示される文字列をローカライズするには、次の手順を実行します。
  1. 編集する文字列ディクショナリファイルをテキストエディタで開きます。
  2. 文字列ディクショナリファイルにキーを追加します。キーには任意の名前を指定できますが、ディクショナリファイルに追加するすべての新規エントリは、「文字列をエクスポート」により自動的に生成されるエントリと同じ構文を使用する必要があります 。
  3. オブジェクトに表示させるローカライズされたテキストを<loc>要素の中に追加します。たとえば、「Good Morning!」というテキストをドイツ語にローカライズする場合は、新規エントリは以下の例のようになります。
    <entry key="New_Key_Name"> <loc>+de-DE+ Guten Morgen!</loc> </entry>
    ローカライズする各文字列について、この手順を繰り返します。
  4. ディクショナリファイルを保存します。
  5. ダイアグラムに「ローカライズされた文字列を取得」ノードを追加します。
  6. キー入力を右クリックし、定数を作成を選択します。ディクショナリファイルに追加したキー名を入力します。上の例の場合は、New_Key_Nameを入力します。
  7. 予備入力を右クリックし、定数を作成を選択します。「ローカライズされた文字列を取得」ノードが、キーに指定されたキーがみつからない場合に表示するテキストをこの定数に入力します。
  8. ベースパス入力を右クリックし、ローカライズするアプリケーションのファイルパスを入力します。
  9. ローカライズされた文字列出力を、ローカライズするオブジェクトに配線します。たとえば、ダイアログボックスの文字列をローカライズする場合は、この出力をダイアログボックスノードのメッセージ入力に配線します。
  10. アプリケーションを実行します。
    アプリケーションで、ローカライズされた文字列が表示されます。
    メモ アプリケーションは、エディタの設定で定義されている言語に基づいて、キーを取得するディクショナリを決定します。エディタを目的の言語に設定しないと、アプリケーションはローカライズされた文字列を表示しません。
これで、コードのローカライズされた文字列ディクショナリが作成されました。
ライブラリを作成した場合は、ライブラリをパッケージ化する前に、パフォーマンスを最適化することを検討します。アプリケーションを作成した場合は、実行ファイルにビルドします。