0

JTable の最初の列の内容を使用して、JComboBox ドロップダウン リストに値を設定する必要があります。問題は、JTable が別のフォーム (JFrame) にあるため、プライベート JComboBox に直接アクセスできないことです。JTable フォームから JComboBox フォームに信号やイベントを送信して、ドロップダウンの内容を更新する必要があることを知らせるにはどうすればよいですか? データについては気にしません。public String[] などを作成できますが、更新が必要であることを JComboBox に適切に通知するにはどうすればよいでしょうか。

4

2 に答える 2

3

ドロップダウン リストJTableに値を設定するには、a の最初の列の内容を使用する必要があります。JComboBox問題は、JTableが別のフォーム ( JFrame) にあるため、プライベートJComboBoxに直接アクセスできないことです。

そして、なぜ と はJComboBox相互JTableにアクセスできるのでしょうか? これらはビュー コンポーネントのみです。テーブルを表示せずにコンボボックスを表示したい場合 (テスト中など) はどうなりますか? から直接データを取得するJTable場合は、深刻な問題があります。を作成した時点で、 の実際のデータを含む がありましJTableた。共有する必要があるのは、そのモデル (または少なくともそのモデル内のデータ) です。TableModelJTable

したがって、コンボボックスのモデルとテーブルのモデルが同じデータを共有すると、すべてがうまくいきます。

于 2012-05-03T21:31:53.213 に答える
2

Swing MVC モデルは、モデル オブジェクトを更新する必要があることを示します。JComboBox が再表示されると、新しいモデル値が表示されます。

于 2012-05-03T20:38:10.540 に答える