プログラムの実行中に更新するにはどうすればよいJList
ですか? 別のクラスからan をインポートしArrayList
て、リストに入れています。ユーザーが配列リストに何かを追加すると、画面上のリストに表示されるようになります。
質問する
1583 次
1 に答える
3
ArrayList
を何らかの形でラップし、を使用して のモデルListModel
を変更しますJList
JList#setModel
詳細については、リストの使用方法を参照してください
DefaultListModel
を更新するたびに を使用できますが、必要に応じて、、、または などを使用してArrayList
を更新する必要があります。DefaultListModel
add(int, E)
addElement(E)
remove(int)
removeElement(Object)
removeAllElements
JList
これにより、モデルに加えられた変更が自動的に通知されます
更新しました
より複雑なアプローチは、プロキシ パターンを使用することかもしれませんArrayList
。この場合、自動的にモデルに反映できる変更時期に関する情報を提供するプロキシを作成します。これは、インポート元のクラスがArrayList
クラスに のインスタンスを要求することを前提としていますArrayList
。
add
このようにして、、set
およびメソッドを監視remove
し、自動的に変更を加えることができListModel
ます...
于 2013-11-04T01:33:43.470 に答える