ペインの出力を別のペインに転送する方法
GUI アプリケーションでは、多くの場合、あるコンポーネントから別のコンポーネントに出力をルーティングする必要があります。これは、オブザーバー パターンとして知られるイベント駆動型のアプローチを使用することで実現できます。
この特定のシナリオでは、PaneWithList の JList リスナーから出力の JTextPane に出力をリダイレクトすることを目的としています。これを実現するには、オブザーバー パターンを利用します。
-
PropertyChangeSupport オブジェクトの作成: まず、Main 内に PropertyChangeSupport のインスタンスを作成します。このオブジェクトは、プロパティ変更リスナーの管理を担当します。
-
PropertyChangeListener を追加します。PaneWithList 内で、選択した行への更新をキャプチャするプロパティ変更リスナーを定義します。 propertyChange メソッドは、それに応じてプロパティ値を更新する必要があります。
-
PropertyChange イベントを発生させます: PaneWithList リスナー内で、選択が変更されると、PropertyChangeSupport オブジェクトを使用してプロパティ変更イベントを発生させます。
-
Main にオブザーバーを追加します: Main で、PaneWithList を PropertyChangeSupport のプロパティ変更リスナーとして登録します。 object.
-
出力を更新します: PaneWithList プロパティが変更されると、Main の propertyChange メソッドが応答します。出力の JTextPane を、PaneWithList から新しく選択された値で更新します。
これらの手順を実装すると、PaneWithList と出力の間に通信パスが正常に確立され、出力が JTextPane にリダイレクトされます。このアプローチにより、GUI 設計のモジュール性と柔軟性が確保されます。
以上がオブザーバー パターンを使用してペイン出力を別のペインにリダイレクトする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。