AbstractListModel
はListDataListener
方法の具体的な実装を提供ListModel
の抽象実装であるが、それは内部的には特定のデータ構造が含まれていません。対応するListDataEvent
を受信すると、ListModel
の変更に応答して、リスニングがそれ自体を更新することができます。 DefaultListModel
は、内部でVector
を操作するAbstractListModel
の典型的な具象サブクラスです。 sourceには、一般的な使用法が示されています。具体的には、fireContentsChanged()
は、リストの内容が変更されたときに、以前の方法では特性が複雑すぎる場合に送信されます。またはfireIntervalRemoved()
です。 Vector
は元DefaultTableModel
のlegacyであるため、より柔軟な代替方法を使用することをお勧めします。 index0
およびindex1
は、選択したデータ構造の要素を表します。
ランダムな場所に10個の要素を挿入するとどうなりますか?
その後index0
とindex1
は"bracket the change."
は "変更は、ブラケット" とはどういう意味でしょうか?
この文脈では、ブラケットは、囲みまたは含む動詞として使用されます。 index0
には最も低い変更インデックスが含まれ、index1
には最も高い変更インデックスが含まれている必要があります。範囲には、変更されていないにもかかわらず、介在するセルが含まれる場合があります。幸いなことに、JTable
のように、JList
はと表示され、のセルしか表示されないため、限界費用は制限されます。 more here。
「変更を囲む」とはどういう意味ですか? –
私は上記で詳しく述べました。 – trashgod
説明してくれてありがとう、私は今それを得ると思います。モデルに20個の要素があり、ランダムな要素を削除した場合、私は(0,19)発火します。ランダムに5つの要素を追加すると、私は(0、24)発射します。あれは正しいですか? –