Eclipse RCPアプリケーションでの動的言語切り替え
-
07-07-2019 - |
質問
ローカライズを使用したEclipse RCPアプリケーションに取り組んでいます。ユーザーは、アプリケーションで使用される言語をその場で変更できる必要があります。この言語切り替え中は、アプリケーションの再起動は行わないでください。また、左から右に記述された言語と右から左に記述された言語を切り替えることも可能です。
この問題を解決する(良い)方法はありますか?
解決
ほとんどのEclipseライブラリーは、ウィジェット作成に関する言語情報をロードします。後でロケールを変更する場合は、Eclipseを再起動して有効にする必要があります。
この種の動的な動作を独自のSWTプログラムに書き込むことはできますが、ロケールが切り替わると、すべてに対して
setText(*)
を呼び出す必要があります :-)
だから、これはあなたが自分でプログラムしない限り、現在動的に管理されていません...
他のrcp / pluginsアプリケーション Birtのような同じ指示を指定します(つまり、最後に" Eclipseを再起動します... ''
とはいえ、わずかに異なる問題が thisで設定されましたスレッド:
言語設定を切り替えて再起動し、その言語で実行します
バグ222023 を読み、模倣することで機能するようになりました
org.eclipse.ui.internal.ide.actions.OpenWorkspaceAction
手動で試しました:
- "
-configuration @ user.home / .myapp / configuration
"を追加launcher.iniへ- "
osgi.nl
"を追加そこに常駐するユーザーconfig.ini
に、それは機能しました。
Platform.getConfigurationLocation()
を介してconfig-Location
にアクセスできるので、それが方法であると思います。
注:" osgi.nl
"を追加しますwebstart jnlpにあまりにも動作します。
他のヒント
各ウィジェットで、それぞれのテキストを使用してsetTextを呼び出す必要があります。ウィジェットにはテキスト変数のマッピングがないため、同様に完全に手動で行う必要があります。