2

FileDialog コンポーネントを英語にローカライズします。私のデフォルト言語はイタリア語です。出来ますか?

FileDialog を使用しているプロジェクトは、Eclipse プラグイン プロジェクトです。

JFileChooserコンポーネントのみのソリューションを見つけましたが、機能します。

前もって感謝します。

4

1 に答える 1

6

元の回答の情報は古くなっています。編集 2 まで下にスクロールしてください。

私の理解では、SWT はいくつかのオペレーティング システム API を呼び出して一般的なダイアログを表示しています (FileDialog はその 1 つです)。したがって、現在の OS 言語または現在のユーザーが選択した MUI システムの言語で常に表示されます。
私の理解が正しければ (そして私はそう強く信じています)、それをローカライズする方法はまったくありません。

編集(Jarekからのコメント後):

私が間違っていたようです。このページ(国際化までスクロールダウン)には次のように書かれています:

Eclipse SDK は、国際化された製品の基礎として設計されています。ダイアログやエラー メッセージなど、Eclipse SDK コンポーネントによって提供されるユーザー インターフェイス要素は、外部化されています。英語の文字列は、デフォルトのリソース バンドルとして提供されます。

つまり、ローカライズ可能である必要があります。しかし、ローカライズされているわけではありません。別の引用:

ドイツ語と日本語のロケールがテストされています。

ドイツ語と日本語にローカライズされているということですか?知らない。これは Mac プラットフォームの Swing の場合でした (今でも同じかどうかはわかりません)。
ただし、それはローカライズが少なくとも可能であることを意味します。

編集2(現状)

そもそもそうだった場合はできませんが(そうは思いません)、最近は言語パックを使用するだけです:

java -Duser.language=fr -Djava.library.path=C:\MyApp -classpath C:\MyApp\swt.jar;C:\MyApp\swt-nl.jar;C:\MyApp\myApp.jar my. org.HelloWorld

FileDialog を翻訳するには、クラス パスに 1 つ以上の言語パックを配置するだけで十分です。イタリア語およびその他のいくつかの場合、それはNLpack1になります。ポーランド語、ハンガリー語、チェコ語、ロシア語の場合はNLpack2になります。

元の情報が間違っているようです、申し訳ありません(そして、あなたの疑問についてJarekに感謝します。これにより、この回答の質が向上するはずです)。

于 2011-05-08T11:45:22.293 に答える