javax.swing.JList

滚动
由于JList自身不支持滚动= =#
so需要包裹JScrollPane...

 

元素添加
且元素添加不像awt.List那样简单的add()就行
需要在列表模式下添加= =#
如:

private DefaultListModel rightMOdel = new DefaultListModel();
private JList commandList = new JList(rightMOdel);
((DefaultListModel) commandList.getModel()).addElement(Object obj);
 

 

事件监听

commandList.addListSelectionListener(new ListSelectionListener() {
    public void valueChanged(ListSelectionEvent e) {
        int index =commandList.getLeadSelectionIndex();
        //e.getLastIndex()、e.getFirstIndex()
        //虽然能像commandList.getLeadSelectionIndex();选择但是有顺序上的讲究
        //如e.getLastIndex()从上往下顺序选择ok,反向则是上次选,正如其名
        console.setText(ConsoleCommand.valueOf(index + 1).toString());
        executeBtn.setEnabled(true);
    }
})  
 

awt.List的,简单~

commandList.addItemListener(new ItemListener() {

	public void itemStateChanged(ItemEvent e) {
		int index = Integer.parseInt(e.getItem().toString());
		console.setText(ConsoleCommand.valueOf(index + 1).toString());
		executeBtn.setEnabled(true);
	}

});
 

 

你可能感兴趣的:(swing)