JList
import java.awt.Color;
import java.util.List;
import java.util.Vector;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
public class JListTest extends JFrame implements ListSelectionListener{
JList lst1 = new JList(), lst2 = new JList();
Vector<String> v = new Vector<String>();
DefaultListModel<String> dlm = new DefaultListModel<String>();
JScrollPane sp1, sp2; //스크롤바 만들기
public JListTest() {
//lst1 - Vector
v.addElement("JAVA");
v.addElement("JavaScript");
v.addElement("HTML5");
v.addElement("CSS3");
v.addElement("JavaServerPage");
v.addElement("Spring");
v.addElement("JQuery");
lst1.setListData(v);
sp1 = new JScrollPane(lst1);
add(sp1, "West");
/*lst2 - Model
dlm.addElement("자바");
dlm.addElement("자바스크립트");
dlm.addElement("에이치티엠엘5");
dlm.addElement("씨에스에스");
dlm.addElement("자바서버페이지");
dlm.addElement("스프링");
dlm.addElement("제이쿼리");
lst2.setModel(dlm);
sp2 = new JScrollPane(lst2);
add(sp2, "East"); */
//
lst1.setBackground(Color.BLACK);
lst1.setForeground(Color.WHITE);
lst1.setSelectionBackground(Color.white);
lst1.setSelectionForeground(Color.red);
setSize(300, 200);
setVisible(true);
lst1.addListSelectionListener(this);
}
//오버라이딩
public void valueChanged(ListSelectionEvent lse){
//List 목록 중 선택된 목록 얻어오기
List<String> list = lst1.getSelectedValuesList();
int listIdx[] = lst1.getSelectedIndices(); //목록 index 얻어오기
//출력
for(int i=0; i<list.size(); i++){
System.out.println(listIdx[i]+"="+list.get(i));
}
}
public static void main(String[] args) {
new JListTest();
}
}