2017-07-28 16 views
0

Java Swingを使用して開発されたアプリケーションのユーザー設定を保存するダイアログがあります。 20以上の設定があり、特定の設定が変更されたときに他のモジュールに通知したいと思います。私は、リスナーのリストを保持し、好みが変わるたびに通知することができることを知っています。どのように私は、Beanオブジェクトに設定が変更されたとき、私はイベントを発生することができますどのよう SwingアプリケーションでUser Preferencesモジュールを設計するにはどうすればよいですか?

  • Dependendingを私のSwingコンポーネントをバインドすることができ

    • :しかし、私は約2の問題を知っていただきたいと思いますあなたの経験、どのようにそのアーキテクチャを解決しますか?どのようなベストプラクティスに従うのですか?

      おかげ

    答えて

    1

    は、私は、ユーザーが機能やアプリケーションのグラフィックを変更するには、いくつかのパラメータを変更することができSwingアプリケーションを開発しました。

    私はそれをこのように近づい:

    • 一般Setting抽象クラスは、ユーザーが変更することができ、単一の値を表します。
    • サブクラスは私の場合には、値の異なるタイプのために作成される:等ブール、整数、浮動小数点、色、
    • Iの値を格納するために作成SettingPreferencesオブジェクトを追跡するためにマップを使用し。

    実際の設定では、(私の場合、さまざまな論理グループの設定のための専用クラス)静的属性を作成し、その属性を使用して設定値を読み取り、変更します。

    PRO:Settingsがインスタンスすべての設定を追跡しますので、私は二度、それらを変更するためのフレームをコーディングする必要はありません、私は設定

    の数からインディペンデントな方法で一度それをやりました結論:明らかに、新しい設定を追加するためにコードを変更する必要があります。私の場合、新しい設定はコードの他の変更のために必要なだけなので、問題ではありませんでしたが、あなたのケースではそうかもしれません。

    +0

    どの設定でどのように他のオブジェクトに変更や更新について知らせるのですか?ありがとう。 –

    +0

    私はそれを単純にしました。設定を必要とするコードは値を保存しませんが、常に最新の値を取得する静的変数を使用します。リスナーのマップを追加することもできますが、より良い方法があると確信しています – bracco23