Java by API/javax.swing.event/ListDataEvent

Материал из Java эксперт
Перейти к: навигация, поиск

ListDataEvent.CONTENTS_CHANGED

   <source lang="java">

/*Type: Interval Added , Index0: 0 , Index1: 0 [First, a, b, c, d] Type: Interval Added , Index0: 5 , Index1: 5 [First, a, b, c, d, Last] Type: Interval Added , Index0: 3 , Index1: 3 [First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 0 , Index1: 0 [New First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 6 , Index1: 6 [New First, a, b, Middle, c, d, New Last] Type: Interval Added , Index0: 7 , Index1: 7 [New First, a, b, Middle, c, d, New Last, a] Type: Interval Added , Index0: 8 , Index1: 8 [New First, a, b, Middle, c, d, New Last, a, b] Type: Interval Added , Index0: 9 , Index1: 9 [New First, a, b, Middle, c, d, New Last, a, b, c] Type: Interval Added , Index0: 10 , Index1: 10 [New First, a, b, Middle, c, d, New Last, a, b, c, d] Type: Interval Removed , Index0: 0 , Index1: 10 []

* */

import java.awt.BorderLayout; import javax.swing.DefaultListModel; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; public class MainClass {

 static String labels[] = { "a", "b", "c", "d" };
 public static void main(String args[]) {
   JFrame frame = new JFrame("Modifying Model");
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   final DefaultListModel model = new DefaultListModel();
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   JList jlist = new JList(model);
   JScrollPane scrollPane1 = new JScrollPane(jlist);
   frame.add(scrollPane1, BorderLayout.WEST);
   ListDataListener listDataListener = new ListDataListener() {
     public void contentsChanged(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalAdded(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalRemoved(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     private void appendEvent(ListDataEvent listDataEvent) {
       switch (listDataEvent.getType()) {
       case ListDataEvent.CONTENTS_CHANGED:
         System.out.println("Type: Contents Changed");
         break;
       case ListDataEvent.INTERVAL_ADDED:
         System.out.println("Type: Interval Added");
         break;
       case ListDataEvent.INTERVAL_REMOVED:
         System.out.println("Type: Interval Removed");
         break;
       }
       System.out.println(", Index0: " + listDataEvent.getIndex0());
       System.out.println(", Index1: " + listDataEvent.getIndex1());
       DefaultListModel theModel = (DefaultListModel) listDataEvent.getSource();
       System.out.println(theModel);
     }
   };
   model.addListDataListener(listDataListener);
   model.add(0, "First");
   model.addElement("Last");
   int size = model.getSize();
   model.insertElementAt("Middle", size / 2);
   size = model.getSize();
   if (size != 0)
     model.set(0, "New First");
   size = model.getSize();
   if (size != 0)
     model.setElementAt("New Last", size - 1);
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   model.clear();
   size = model.getSize();
   if (size != 0)
     model.remove(0);
   model.removeAllElements();
   model.removeElement("Last");
   size = model.getSize();
   if (size != 0)
     model.removeElementAt(size / 2);
   size = model.getSize();
   if (size != 0)
     model.removeRange(0, size / 2);
   frame.setSize(640, 300);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



ListDataEvent: getIndex0()

   <source lang="java">

/*Type: Interval Added , Index0: 0 , Index1: 0 [First, a, b, c, d] Type: Interval Added , Index0: 5 , Index1: 5 [First, a, b, c, d, Last] Type: Interval Added , Index0: 3 , Index1: 3 [First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 0 , Index1: 0 [New First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 6 , Index1: 6 [New First, a, b, Middle, c, d, New Last] Type: Interval Added , Index0: 7 , Index1: 7 [New First, a, b, Middle, c, d, New Last, a] Type: Interval Added , Index0: 8 , Index1: 8 [New First, a, b, Middle, c, d, New Last, a, b] Type: Interval Added , Index0: 9 , Index1: 9 [New First, a, b, Middle, c, d, New Last, a, b, c] Type: Interval Added , Index0: 10 , Index1: 10 [New First, a, b, Middle, c, d, New Last, a, b, c, d] Type: Interval Removed , Index0: 0 , Index1: 10 []

* */

import java.awt.BorderLayout; import javax.swing.DefaultListModel; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; public class MainClass {

 static String labels[] = { "a", "b", "c", "d" };
 public static void main(String args[]) {
   JFrame frame = new JFrame("Modifying Model");
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   final DefaultListModel model = new DefaultListModel();
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   JList jlist = new JList(model);
   JScrollPane scrollPane1 = new JScrollPane(jlist);
   frame.add(scrollPane1, BorderLayout.WEST);
   ListDataListener listDataListener = new ListDataListener() {
     public void contentsChanged(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalAdded(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalRemoved(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     private void appendEvent(ListDataEvent listDataEvent) {
       switch (listDataEvent.getType()) {
       case ListDataEvent.CONTENTS_CHANGED:
         System.out.println("Type: Contents Changed");
         break;
       case ListDataEvent.INTERVAL_ADDED:
         System.out.println("Type: Interval Added");
         break;
       case ListDataEvent.INTERVAL_REMOVED:
         System.out.println("Type: Interval Removed");
         break;
       }
       System.out.println(", Index0: " + listDataEvent.getIndex0());
       System.out.println(", Index1: " + listDataEvent.getIndex1());
       DefaultListModel theModel = (DefaultListModel) listDataEvent.getSource();
       System.out.println(theModel);
     }
   };
   model.addListDataListener(listDataListener);
   model.add(0, "First");
   model.addElement("Last");
   int size = model.getSize();
   model.insertElementAt("Middle", size / 2);
   size = model.getSize();
   if (size != 0)
     model.set(0, "New First");
   size = model.getSize();
   if (size != 0)
     model.setElementAt("New Last", size - 1);
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   model.clear();
   size = model.getSize();
   if (size != 0)
     model.remove(0);
   model.removeAllElements();
   model.removeElement("Last");
   size = model.getSize();
   if (size != 0)
     model.removeElementAt(size / 2);
   size = model.getSize();
   if (size != 0)
     model.removeRange(0, size / 2);
   frame.setSize(640, 300);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



ListDataEvent.getIndex1()

   <source lang="java">

/*Type: Interval Added , Index0: 0 , Index1: 0 [First, a, b, c, d] Type: Interval Added , Index0: 5 , Index1: 5 [First, a, b, c, d, Last] Type: Interval Added , Index0: 3 , Index1: 3 [First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 0 , Index1: 0 [New First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 6 , Index1: 6 [New First, a, b, Middle, c, d, New Last] Type: Interval Added , Index0: 7 , Index1: 7 [New First, a, b, Middle, c, d, New Last, a] Type: Interval Added , Index0: 8 , Index1: 8 [New First, a, b, Middle, c, d, New Last, a, b] Type: Interval Added , Index0: 9 , Index1: 9 [New First, a, b, Middle, c, d, New Last, a, b, c] Type: Interval Added , Index0: 10 , Index1: 10 [New First, a, b, Middle, c, d, New Last, a, b, c, d] Type: Interval Removed , Index0: 0 , Index1: 10 []

* */

import java.awt.BorderLayout; import javax.swing.DefaultListModel; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; public class MainClass {

 static String labels[] = { "a", "b", "c", "d" };
 public static void main(String args[]) {
   JFrame frame = new JFrame("Modifying Model");
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   final DefaultListModel model = new DefaultListModel();
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   JList jlist = new JList(model);
   JScrollPane scrollPane1 = new JScrollPane(jlist);
   frame.add(scrollPane1, BorderLayout.WEST);
   ListDataListener listDataListener = new ListDataListener() {
     public void contentsChanged(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalAdded(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalRemoved(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     private void appendEvent(ListDataEvent listDataEvent) {
       switch (listDataEvent.getType()) {
       case ListDataEvent.CONTENTS_CHANGED:
         System.out.println("Type: Contents Changed");
         break;
       case ListDataEvent.INTERVAL_ADDED:
         System.out.println("Type: Interval Added");
         break;
       case ListDataEvent.INTERVAL_REMOVED:
         System.out.println("Type: Interval Removed");
         break;
       }
       System.out.println(", Index0: " + listDataEvent.getIndex0());
       System.out.println(", Index1: " + listDataEvent.getIndex1());
       DefaultListModel theModel = (DefaultListModel) listDataEvent.getSource();
       System.out.println(theModel);
     }
   };
   model.addListDataListener(listDataListener);
   model.add(0, "First");
   model.addElement("Last");
   int size = model.getSize();
   model.insertElementAt("Middle", size / 2);
   size = model.getSize();
   if (size != 0)
     model.set(0, "New First");
   size = model.getSize();
   if (size != 0)
     model.setElementAt("New Last", size - 1);
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   model.clear();
   size = model.getSize();
   if (size != 0)
     model.remove(0);
   model.removeAllElements();
   model.removeElement("Last");
   size = model.getSize();
   if (size != 0)
     model.removeElementAt(size / 2);
   size = model.getSize();
   if (size != 0)
     model.removeRange(0, size / 2);
   frame.setSize(640, 300);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



ListDataEvent: getType()

   <source lang="java">

/*Type: Interval Added , Index0: 0 , Index1: 0 [First, a, b, c, d] Type: Interval Added , Index0: 5 , Index1: 5 [First, a, b, c, d, Last] Type: Interval Added , Index0: 3 , Index1: 3 [First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 0 , Index1: 0 [New First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 6 , Index1: 6 [New First, a, b, Middle, c, d, New Last] Type: Interval Added , Index0: 7 , Index1: 7 [New First, a, b, Middle, c, d, New Last, a] Type: Interval Added , Index0: 8 , Index1: 8 [New First, a, b, Middle, c, d, New Last, a, b] Type: Interval Added , Index0: 9 , Index1: 9 [New First, a, b, Middle, c, d, New Last, a, b, c] Type: Interval Added , Index0: 10 , Index1: 10 [New First, a, b, Middle, c, d, New Last, a, b, c, d] Type: Interval Removed , Index0: 0 , Index1: 10 []

* */

import java.awt.BorderLayout; import javax.swing.DefaultListModel; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; public class MainClass {

 static String labels[] = { "a", "b", "c", "d" };
 public static void main(String args[]) {
   JFrame frame = new JFrame("Modifying Model");
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   final DefaultListModel model = new DefaultListModel();
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   JList jlist = new JList(model);
   JScrollPane scrollPane1 = new JScrollPane(jlist);
   frame.add(scrollPane1, BorderLayout.WEST);
   ListDataListener listDataListener = new ListDataListener() {
     public void contentsChanged(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalAdded(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalRemoved(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     private void appendEvent(ListDataEvent listDataEvent) {
       switch (listDataEvent.getType()) {
       case ListDataEvent.CONTENTS_CHANGED:
         System.out.println("Type: Contents Changed");
         break;
       case ListDataEvent.INTERVAL_ADDED:
         System.out.println("Type: Interval Added");
         break;
       case ListDataEvent.INTERVAL_REMOVED:
         System.out.println("Type: Interval Removed");
         break;
       }
       System.out.println(", Index0: " + listDataEvent.getIndex0());
       System.out.println(", Index1: " + listDataEvent.getIndex1());
       DefaultListModel theModel = (DefaultListModel) listDataEvent.getSource();
       System.out.println(theModel);
     }
   };
   model.addListDataListener(listDataListener);
   model.add(0, "First");
   model.addElement("Last");
   int size = model.getSize();
   model.insertElementAt("Middle", size / 2);
   size = model.getSize();
   if (size != 0)
     model.set(0, "New First");
   size = model.getSize();
   if (size != 0)
     model.setElementAt("New Last", size - 1);
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   model.clear();
   size = model.getSize();
   if (size != 0)
     model.remove(0);
   model.removeAllElements();
   model.removeElement("Last");
   size = model.getSize();
   if (size != 0)
     model.removeElementAt(size / 2);
   size = model.getSize();
   if (size != 0)
     model.removeRange(0, size / 2);
   frame.setSize(640, 300);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



ListDataEvent.INTERVAL_ADDED

   <source lang="java">

/*Type: Interval Added , Index0: 0 , Index1: 0 [First, a, b, c, d] Type: Interval Added , Index0: 5 , Index1: 5 [First, a, b, c, d, Last] Type: Interval Added , Index0: 3 , Index1: 3 [First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 0 , Index1: 0 [New First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 6 , Index1: 6 [New First, a, b, Middle, c, d, New Last] Type: Interval Added , Index0: 7 , Index1: 7 [New First, a, b, Middle, c, d, New Last, a] Type: Interval Added , Index0: 8 , Index1: 8 [New First, a, b, Middle, c, d, New Last, a, b] Type: Interval Added , Index0: 9 , Index1: 9 [New First, a, b, Middle, c, d, New Last, a, b, c] Type: Interval Added , Index0: 10 , Index1: 10 [New First, a, b, Middle, c, d, New Last, a, b, c, d] Type: Interval Removed , Index0: 0 , Index1: 10 []

* */

import java.awt.BorderLayout; import javax.swing.DefaultListModel; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; public class MainClass {

 static String labels[] = { "a", "b", "c", "d" };
 public static void main(String args[]) {
   JFrame frame = new JFrame("Modifying Model");
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   final DefaultListModel model = new DefaultListModel();
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   JList jlist = new JList(model);
   JScrollPane scrollPane1 = new JScrollPane(jlist);
   frame.add(scrollPane1, BorderLayout.WEST);
   ListDataListener listDataListener = new ListDataListener() {
     public void contentsChanged(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalAdded(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalRemoved(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     private void appendEvent(ListDataEvent listDataEvent) {
       switch (listDataEvent.getType()) {
       case ListDataEvent.CONTENTS_CHANGED:
         System.out.println("Type: Contents Changed");
         break;
       case ListDataEvent.INTERVAL_ADDED:
         System.out.println("Type: Interval Added");
         break;
       case ListDataEvent.INTERVAL_REMOVED:
         System.out.println("Type: Interval Removed");
         break;
       }
       System.out.println(", Index0: " + listDataEvent.getIndex0());
       System.out.println(", Index1: " + listDataEvent.getIndex1());
       DefaultListModel theModel = (DefaultListModel) listDataEvent.getSource();
       System.out.println(theModel);
     }
   };
   model.addListDataListener(listDataListener);
   model.add(0, "First");
   model.addElement("Last");
   int size = model.getSize();
   model.insertElementAt("Middle", size / 2);
   size = model.getSize();
   if (size != 0)
     model.set(0, "New First");
   size = model.getSize();
   if (size != 0)
     model.setElementAt("New Last", size - 1);
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   model.clear();
   size = model.getSize();
   if (size != 0)
     model.remove(0);
   model.removeAllElements();
   model.removeElement("Last");
   size = model.getSize();
   if (size != 0)
     model.removeElementAt(size / 2);
   size = model.getSize();
   if (size != 0)
     model.removeRange(0, size / 2);
   frame.setSize(640, 300);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



ListDataEvent.INTERVAL_REMOVED

   <source lang="java">

/*Type: Interval Added , Index0: 0 , Index1: 0 [First, a, b, c, d] Type: Interval Added , Index0: 5 , Index1: 5 [First, a, b, c, d, Last] Type: Interval Added , Index0: 3 , Index1: 3 [First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 0 , Index1: 0 [New First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 6 , Index1: 6 [New First, a, b, Middle, c, d, New Last] Type: Interval Added , Index0: 7 , Index1: 7 [New First, a, b, Middle, c, d, New Last, a] Type: Interval Added , Index0: 8 , Index1: 8 [New First, a, b, Middle, c, d, New Last, a, b] Type: Interval Added , Index0: 9 , Index1: 9 [New First, a, b, Middle, c, d, New Last, a, b, c] Type: Interval Added , Index0: 10 , Index1: 10 [New First, a, b, Middle, c, d, New Last, a, b, c, d] Type: Interval Removed , Index0: 0 , Index1: 10 []

* */

import java.awt.BorderLayout; import javax.swing.DefaultListModel; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; public class MainClass {

 static String labels[] = { "a", "b", "c", "d" };
 public static void main(String args[]) {
   JFrame frame = new JFrame("Modifying Model");
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   final DefaultListModel model = new DefaultListModel();
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   JList jlist = new JList(model);
   JScrollPane scrollPane1 = new JScrollPane(jlist);
   frame.add(scrollPane1, BorderLayout.WEST);
   ListDataListener listDataListener = new ListDataListener() {
     public void contentsChanged(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalAdded(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     public void intervalRemoved(ListDataEvent listDataEvent) {
       appendEvent(listDataEvent);
     }
     private void appendEvent(ListDataEvent listDataEvent) {
       switch (listDataEvent.getType()) {
       case ListDataEvent.CONTENTS_CHANGED:
         System.out.println("Type: Contents Changed");
         break;
       case ListDataEvent.INTERVAL_ADDED:
         System.out.println("Type: Interval Added");
         break;
       case ListDataEvent.INTERVAL_REMOVED:
         System.out.println("Type: Interval Removed");
         break;
       }
       System.out.println(", Index0: " + listDataEvent.getIndex0());
       System.out.println(", Index1: " + listDataEvent.getIndex1());
       DefaultListModel theModel = (DefaultListModel) listDataEvent.getSource();
       System.out.println(theModel);
     }
   };
   model.addListDataListener(listDataListener);
   model.add(0, "First");
   model.addElement("Last");
   int size = model.getSize();
   model.insertElementAt("Middle", size / 2);
   size = model.getSize();
   if (size != 0)
     model.set(0, "New First");
   size = model.getSize();
   if (size != 0)
     model.setElementAt("New Last", size - 1);
   for (int i = 0, n = labels.length; i < n; i++) {
     model.addElement(labels[i]);
   }
   model.clear();
   size = model.getSize();
   if (size != 0)
     model.remove(0);
   model.removeAllElements();
   model.removeElement("Last");
   size = model.getSize();
   if (size != 0)
     model.removeElementAt(size / 2);
   size = model.getSize();
   if (size != 0)
     model.removeRange(0, size / 2);
   frame.setSize(640, 300);
   frame.setVisible(true);
 }

}

      </source>