源代码:
<span style="font-size:18px;">import java.util.Vector ;
import java.awt.GridLayout ;
import java.awt.Container ;
import java.awt.event.WindowAdapter ;
import java.awt.event.WindowListener ;
import java.awt.event.WindowEvent ;
import javax.swing.JFrame ;
import javax.swing.JList ;
import javax.swing.JScrollPane ;
import javax.swing.BorderFactory ;
import javax.swing.ListSelectionModel ;
class MyList
{
JFrame frame = new JFrame() ;
Container con = frame.getContentPane() ; //得到窗体容器
private JList list1 = null ;
private JList list2 = null ;
public MyList()
{
this.frame.setLayout(new GridLayout(1,3)) ;
String brother[] = {"大哥","呆萌","小三","小四","小五","大哥","呆萌","小三","小四","小五"} ;
Vector<String> v = new Vector<String>() ;
v.add("春天") ;
v.add("夏天") ;
v.add("秋天") ;
v.add("冬天") ;
this.list1 = new JList(brother) ;
this.list2 = new JList(v) ;
this.list1.setBorder(BorderFactory.createTitledBorder("你是谁啊?")) ;
this.list2.setBorder(BorderFactory.createTitledBorder("现在是什么季节")) ;
this.list1.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION) ; //多选
this.list2.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) ; //单选
this.con.add(new JScrollPane(this.list1)) ;
this.con.add(this.list2) ;
this.frame.setSize(300,300) ;
this.frame.setVisible(true) ;
this.frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(1) ;
}
}) ;
}
}
class Tester
{
public static void main(String args[])
{
new MyList() ;
}
}</span>
常用监听:
<span style="font-size:18px;">import java.util.Vector ;
import java.awt.event.WindowEvent ;
import java.awt.event.WindowAdapter ;
import java.awt.event.WindowListener ;
import javax.swing.event.ListSelectionListener ;
import javax.swing.event.ListSelectionEvent ;
import java.awt.Container ;
import java.awt.GridLayout ;
import javax.swing.JFrame ;
import javax.swing.JList ;
import javax.swing.JScrollPane ;
import javax.swing.BorderFactory ;
import javax.swing.AbstractListModel ;
import javax.swing.ListSelectionModel ;
class MyListModel extends AbstractListModel
{
private String brothers[] = {"大哥","呆萌","小三","小四","小五"} ;
public Object getElementAt(int index)
{
if(index<brothers.length)
return brothers[index] ;
else return null ;
}
public int getSize()
{
return brothers.length ;
}
}
class MyList implements ListSelectionListener
{
JFrame frame = new JFrame() ;
Container con = frame.getContentPane() ;
private JList list = null ;
public MyList()
{
this.frame.setLayout(new GridLayout(1,3)) ;
this.list = new JList(new MyListModel()) ;
this.list.setBorder(BorderFactory.createTitledBorder("你排行老几啊?")) ;
this.list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION) ;
this.con.add(new JScrollPane(list)) ;
this.frame.setSize(400,400) ;
this.frame.setVisible(true) ;
this.list.addListSelectionListener(this) ;
this.frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent a){
System.exit(1) ;
}
}) ;
}
public void valueChanged(ListSelectionEvent e)
{
int temp[] = list.getSelectedIndices() ;
//int temp[] = list1.getSelectedIndices() ;
System.out.println("选中的内容是:") ;
for(int i=0;i<temp.length;i++)
{
System.out.println(list.getModel().getElementAt(i)) ;
}
}
}
class Tester
{
public static void main(String args[])
{
new MyList() ;
}
}
</span>