2012-12-22 2 views
0

그래서 두 개의 탭에 JList가 있고 둘 다 데이터가 저장된 arraylist가 있습니다. 이제는 사용할 수있는 방법을 찾아야합니다. 한 탭의 한 JList에서 다른 탭의 다른 JList로 데이터를 복사합니다. 하나 개의 모델에서 요소를 통해하나의 JList에서 다른 JList로 데이터를 복사하는 방법

list2.setModel(list1.getModel()); 

그렇지 루프와로 추가

Thansk

+2

몇 가지 코드를 추가해도 괜찮습니까? – DrinkJavaCodeJava

+0

캔트는 급우와 노팅엄 대학을 배신한 뱀에게 가져간 모든 자국을 얻을 것이다. 특히 카일 만약 당신이 내게 그 일을하는 방법을 알려주거나 내가 간단하게 문제를 도울 수있는 자바 함수가 있다면. – KyleTheSnake

답변

2

당신이하는 ListModel을 가지고이 작품 정확히 의도,하지만 그들이 공유하는 것이 무엇인지에 따라 달라집니다, 복사하지 다른쪽에.

ListModel model = list1.getModel(); 
DefaultListModel list2Model = new DefaultListModel(); 
for (int i=0; i<model.getSize(); i++) { 
    list2Model.addElement(model.elementAt(i); 
} 

list2.setModel(list2Model); 
+0

전체 목록 모델을 복사하는 것이 이상적인 요소가 아니므로 목록에서 이전 데이터를 유지하려는 경우 요소를 반복하는 소리가 좋아요. – KyleTheSnake

+0

Brilliant Thanks! – KyleTheSnake

0

그럼, 먼저 방금 두 번째의 JList에 전달할 수 있도록 다음과 같이 당신이 첫 번째의 JList에 데이터를 저장 한 생각 각 JList의

DefaultListModel listModel = new DefaultListModel(); 
DefaultListModel listModel2 = new DefaultListModel(); 

의 모델을 설정해야 :

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)  {           
    int index=LV.getSelectedIndex(); 
    listModel2.addElement(LV.getSelectedValue()); 
    LV2.setModel(listModel2); 
    listModel.remove(index); 
} 
관련 문제