The following example demonstrates list data events on a mutable list:

intervalAdded
event was fired.
intervalRemoved
event was fired.
contentsChanged events are fired one for
the item that moved and one for the item that was displaced.
ListDataEventDemo.java.
Here is the code that registers
a list data listener on the list model
and implements the listener:
//...where member variables are declared...
private DefaultListModel listModel;
...
//Create and populate the list model
listModel = new DefaultListModel();
...
listModel.addListDataListener(new MyListDataListener());
class MyListDataListener implements ListDataListener {
public void contentsChanged(ListDataEvent e) {
log.append("contentsChanged: " + e.getIndex0() +
", " + e.getIndex1() + newline);
}
public void intervalAdded(ListDataEvent e) {
log.append("intervalAdded: " + e.getIndex0() +
", " + e.getIndex1() + newline);
}
public void intervalRemoved(ListDataEvent e) {
log.append("intervalRemoved: " + e.getIndex0() +
", " + e.getIndex1() + newline);
}
}
The ListDataListener Interface
ListDataListenerhas no corresponding adapter class.
Method Purpose intervalAdded(ListDataEvent) Called when one or more items have been added to the list. intervalRemoved(ListDataEvent) Called when one or more items have been removed from the list. contentsChanged(ListDataEvent) Called when the contents of one or more items in the list have changed.
Method Purpose Object getSource()
(injava.util.EventObject)Return the object that fired the event. int getIndex0() Return the index of the first item whose value has changed. int getIndex1() Return the index of the last item whose value has changed. int getType() Return the event type. The possible values are: CONTENTS_CHANGED,INTERVAL_ADDED, orINTERVAL_REMOVED.
The following table lists the examples that use list data listeners.
Example Where Described Notes ListDataEventDemoThis section Reports all list data events that occur on a list.