2016-06-24 7 views
0

나는 JList를 채우려 고하지만, 반복되는 레코드를 피하기 위해 먼저 기존 요소를 제거하려고한다. LLenarGrid는 메소드를 호출하여 버튼을 호출하여 arraylist 및 JList에 객체를 표시하지만 5 개의 요소가 있고 버튼을 두 번 줄 경우 마치 모델을 정리하지 않은 것처럼 마치 10을 두 배로 늘립니다.JList 자바의 깨끗한 모델

내 방법, 내가 도울 수 있다면? 또는 내가 잘못하고있어, 고마워

public void LlenarGrid() 
{ 

    listapersonas.setModel(new DefaultListModel()); 
    DefaultListModel listModel = (DefaultListModel)listapersonas.getModel(); 
    listModel.removeAllElements(); 
    for (clsPersona d : personas) { 
     listModel.addElement(d.RetornaPersona()); 
    } 
    listapersonas.setModel(listModel); 
    listapersonas.clearSelection(); 
} 
+0

LLenarGrid가 무엇인지, 또는 오타 인 경우 명확하지 않습니다. 메서드가 호출하는 호출도 아닙니다. 문제가 무엇인지 묻는 것이 어렵 기 때문에이 문제를 해결하십시오. – AlBlue

+0

LLenarGrid는 메소드를 호출하여 버튼을 호출하여 arraylist 및 JList에 객체를 표시하지만 5 개의 요소가 있고 버튼을 두 번 줄 경우 마치 모델을 정리하지 않은 것처럼 10을 두 배로 늘림 –

+1

더 빨리 도움을 받으려면, 제발 [mcve]를 게시하십시오 – Frakcool

답변

2

여러 번 나열하도록 모델을 설정할 필요는 없습니다.

이미 수행중인 아래를 사용하여 모든 요소를 ​​제거 할 수 있습니다.

model.removeAllElements(); 

존 볼링거 (John Bollinger)가 제안한대로 페르소나 목록을 확인하십시오.

+0

맞습니다. arrayList를 채울 것이지만 array.clear(); 감사합니다. –