Mega Code Archive

 
Categories / Java / Swing JFC
 

Create list from list model

import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.AbstractListModel; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.ListSelectionModel; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; public class LongListTest extends JFrame implements ListSelectionListener {   JLabel label = new JLabel();   public LongListTest() {     setTitle("LongListTest");     setSize(400, 300);     addWindowListener(new WindowAdapter() {       public void windowClosing(WindowEvent e) {         System.exit(0);       }     });     JList wordList = new JList(new WordListModel(300000));     wordList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);     wordList.setFixedCellWidth(50);     wordList.setFixedCellHeight(15);     JScrollPane scrollPane = new JScrollPane(wordList);     JPanel p = new JPanel();     p.add(scrollPane);     wordList.addListSelectionListener(this);     getContentPane().add(p, "Center");     getContentPane().add(label, "North");   }   public void valueChanged(ListSelectionEvent evt) {     JList source = (JList) evt.getSource();     String word = (String) source.getSelectedValue();     label.setText(word);   }   public static void main(String[] args) {     JFrame frame = new LongListTest();     frame.show();   } } class WordListModel extends AbstractListModel {   private int length;   public WordListModel(int n) {     length = n;   }   public int getSize() {     return length;   }   public Object getElementAt(int n) {     return Integer.toString(n);   } }