본문 바로가기

Swing/JList DefaultListModel

JList DefaultListModel example

JList 에 동적으로 아이템을 추가하는 예

   

아래의 코드는 버튼을 눌러서 동적으로 JList 의 아이템을 갱신하는 예이다


 int num;

    private void btnAddItemActionPerformed(java.awt.event.ActionEvent evt) {                                           

        num++;

        DefaultListModel listModel = new DefaultListModel();

        for(int i=1;i<=num;i++) {

            listModel.addElement("아이템 "+i);

        }

        jList1.setModel(listModel);

    }


다음은 기존 아이템에 추가하여 새로 한개의 아이템을 추가하는 예이다

    int num;

    private void btnAddItemActionPerformed(java.awt.event.ActionEvent evt) {                                           

        num++;

        // 기존 아이템을 가진 모델 객체를 얻는다

        ListModel listModel = jList1.getModel();


  // 기존 아이템을 새로운 모델 객체에 복사한다

        DefaultListModel defaultModel = new DefaultListModel();

        for(int i=0;i<listModel.getSize();i++) {

            defaultModel.addElement(listModel.getElementAt(i));

        }

        // 기존 아이템 외에 새로운 아이템 하나 추가한다

        defaultModel.addElement("아이템 "+num);


        // 리스트에 모델을 적용한다

        jList1.setModel(defaultModel);

    }