Java Swingデスクトップアプリケーションを国際化するためのベストプラクティスは何ですか?

ステファングレニエ:

メソッドはたくさんあると思いますが、コードへの影響が最も少ない、これを行うための推奨される方法は何ですか?

プロパティファイルを作成することは明らかですが、レンダリングで値をどのように交換しますか?J2EEでは、常にページ全体を再レンダリングするだけなので簡単です。しかし、Swingアプリでは、.getProperty()のコードをpaintComponent(Graphics g)メソッドに追加するだけですか?

その場合は、重く見えませんか?以前は必要がなかった場所でこのメソッドをどこでもオーバーライドする必要があります...

追加:何らかの登録パターンを強制せずに、現在表示されているすべてのコンポーネントを再レンダリングする通知システムをどのようにセットアップしますか?

paintComponent(Graphics g)を上書きした場合、何かが変更されたイベントを発生させるだけで、paintComponent(Graphics g)メソッドが呼び出されると思います...

ステファングレニエ:

私が思いついた唯一の解決策は、再レンダリングする必要があるすべてのコンポーネントの大規模なレジストリを作成することでした。次に、ロケールを切り替えるための呼び出しが行われた場合は、レジストリを呼び出すだけで、登録されているすべてのコンポーネントを調べ、それらの値を調整します。したがって、たとえば、登録されているすべてのJLabelについて、

for(JLabel specificJLabel : REGISTRY.registeredJLabels)
{
  String localeKey = specificJLabel.getActionCommand();
  specificJLabel.setText(ResourceBundle.getString(localeKey)); 
}

ロケールキーは、コンポーネントのActionCommandに格納されます。次に、現在レンダリングされている画面が何であれ、メインの親パネルがそれを再レンダリングします。また、この方法でレジストリがロケールキーを管理する必要がなくなり、これらはレジストリから完全に分離されます。各コンポーネントは、ResourceBundleへの独自のロケールキーを管理する責任があります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

最小限のダウンタイムでJava Webアプリケーションをデプロイするためのベストプラクティス?

分類Dev

さまざまなJavaコレクションをベンチマークするためのベストプラクティスは何ですか?

分類Dev

アプリケーションのメトリックス/統計を収集/保存/表示するためのJavaライブラリとは何ですか?

分類Dev

モジュラーJavaアプリケーションでehCacheを構成するためのベストプラクティス

分類Dev

Javaデスクトップアプリケーションでデータを永続化する最良の方法は何ですか。

分類Dev

Extjs / Javaアプリケーションにセキュリティを実装するためのベストプラクティス

分類Dev

GoogleマップをJavaデスクトップアプリケーションに統合するための良いソリューションですか?

分類Dev

Javaデスクトップアプリケーションに使用するのに最適なデータベースは何ですか

分類Dev

Javaアプリケーション構成ファイルの場所のベストプラクティスは何ですか?

分類Dev

HibernateでJavaクラスをモデリングするためのベストプラクティスは何ですか?

分類Dev

Java SwingベースのWindowsアプリケーションのUIをテストするための優れた自動テストツールとは

分類Dev

Javaアプリケーションの別のクラスからユーティリティクラスに宣言されたパブリック最終静的リストにアクセスするにはどうすればよいですか?

分類Dev

Javaで内部コレクションを返すためのベストプラクティスは何ですか?

分類Dev

Javaから動的JavaScriptを管理するためのベストプラクティスは何ですか?

分類Dev

Javaで日付を操作して保存するためのベストプラクティスは何ですか?

分類Dev

複数の結果を持つJava 8ストリームを管理するためのベストプラクティスは何ですか

分類Dev

Java Webアプリケーションのベストプラクティス

分類Dev

Javaスレッドでサービスを使用するためのベストプラクティスは何ですか?

分類Dev

Javaデスクトップアプリケーションをパッケージ化するにはどうすればよいですか?

分類Dev

bashスクリプトでJavaアプリケーションのプロセスIDを見つけます(ターゲットアプリケーションがすでに実行されているかどうかを確認するため)

分類Dev

URL「/セッション」は有効なリソースにマッピングされませんでした| Javaを使用してwinAppDriver / Windowsアプリケーションのドライバを使用してデスクトップアプリケーションのテストを実行するには?

分類Dev

デスクトップJavaアプリケーションの構成ファイルを暗号化する方法

分類Dev

Java:タイムクリティカルなアプリケーションでマルチスレッドの高性能を実現するための最良のアプローチは何ですか?

分類Dev

アプリケーションの起動が完了したことを知るために使用できるJava Swingイベントは何ですか?

分類Dev

ストリームを使用してJavaでオブジェクトのコレクションをマップおよびフィルタリングするためのベストプラクティス

分類Dev

1つのJUnitでインタラクティブなテキストベースのJavaアプリケーションをテストするにはどうすればよいですか?

分類Dev

デスクトップアプリケーション用のJava SwingまたはWindowsフォーム?

分類Dev

Javaでマップのリテラルスタイルを記述するためのベストプラクティスはありますか?

分類Dev

後でJavaで削除する必要がある変数をマークするためのベストプラクティスは何ですか?

Related 関連記事

  1. 1

    最小限のダウンタイムでJava Webアプリケーションをデプロイするためのベストプラクティス?

  2. 2

    さまざまなJavaコレクションをベンチマークするためのベストプラクティスは何ですか?

  3. 3

    アプリケーションのメトリックス/統計を収集/保存/表示するためのJavaライブラリとは何ですか?

  4. 4

    モジュラーJavaアプリケーションでehCacheを構成するためのベストプラクティス

  5. 5

    Javaデスクトップアプリケーションでデータを永続化する最良の方法は何ですか。

  6. 6

    Extjs / Javaアプリケーションにセキュリティを実装するためのベストプラクティス

  7. 7

    GoogleマップをJavaデスクトップアプリケーションに統合するための良いソリューションですか?

  8. 8

    Javaデスクトップアプリケーションに使用するのに最適なデータベースは何ですか

  9. 9

    Javaアプリケーション構成ファイルの場所のベストプラクティスは何ですか?

  10. 10

    HibernateでJavaクラスをモデリングするためのベストプラクティスは何ですか?

  11. 11

    Java SwingベースのWindowsアプリケーションのUIをテストするための優れた自動テストツールとは

  12. 12

    Javaアプリケーションの別のクラスからユーティリティクラスに宣言されたパブリック最終静的リストにアクセスするにはどうすればよいですか?

  13. 13

    Javaで内部コレクションを返すためのベストプラクティスは何ですか?

  14. 14

    Javaから動的JavaScriptを管理するためのベストプラクティスは何ですか?

  15. 15

    Javaで日付を操作して保存するためのベストプラクティスは何ですか?

  16. 16

    複数の結果を持つJava 8ストリームを管理するためのベストプラクティスは何ですか

  17. 17

    Java Webアプリケーションのベストプラクティス

  18. 18

    Javaスレッドでサービスを使用するためのベストプラクティスは何ですか?

  19. 19

    Javaデスクトップアプリケーションをパッケージ化するにはどうすればよいですか?

  20. 20

    bashスクリプトでJavaアプリケーションのプロセスIDを見つけます(ターゲットアプリケーションがすでに実行されているかどうかを確認するため)

  21. 21

    URL「/セッション」は有効なリソースにマッピングされませんでした| Javaを使用してwinAppDriver / Windowsアプリケーションのドライバを使用してデスクトップアプリケーションのテストを実行するには?

  22. 22

    デスクトップJavaアプリケーションの構成ファイルを暗号化する方法

  23. 23

    Java:タイムクリティカルなアプリケーションでマルチスレッドの高性能を実現するための最良のアプローチは何ですか?

  24. 24

    アプリケーションの起動が完了したことを知るために使用できるJava Swingイベントは何ですか?

  25. 25

    ストリームを使用してJavaでオブジェクトのコレクションをマップおよびフィルタリングするためのベストプラクティス

  26. 26

    1つのJUnitでインタラクティブなテキストベースのJavaアプリケーションをテストするにはどうすればよいですか?

  27. 27

    デスクトップアプリケーション用のJava SwingまたはWindowsフォーム?

  28. 28

    Javaでマップのリテラルスタイルを記述するためのベストプラクティスはありますか?

  29. 29

    後でJavaで削除する必要がある変数をマークするためのベストプラクティスは何ですか?

ホットタグ

アーカイブ