カード レイアウトである私のメインJFrame
コンテンツ パネルと、多くの (たとえばpanel1
、panel2
) パネルをカードとして追加しました。panel1
で何かが変更されたときにUI を更新したいと考えていますpanel2
。
CardLayout
Swingでの子(パネル)を更新するには?
カード レイアウトである私のメインJFrame
コンテンツ パネルと、多くの (たとえばpanel1
、panel2
) パネルをカードとして追加しました。panel1
で何かが変更されたときにUI を更新したいと考えていますpanel2
。
CardLayout
Swingでの子(パネル)を更新するには?
ここで説明するオブザーバーパターンは、これの鍵です。特に、両方のパネルが共通のモデルをリッスンする可能性があります。これにより、イベントが発生して各リスニングパネルが更新されます。を使用した例は、こことここにあります。PropertyChangeListener
変更したいもののターゲットへの参照を維持し、ある種のコールバック関数を使用して変更を検出します。コールバック関数で保存された参照を使用します。これを具体的にどのように実装するかは、コードにとって最も意味のあるものでなければなりません...しかし、あなたがやろうとしていることは単純な作業です。