JTable에 행을 추가하는 방법은 무엇입니까?


94

에 새 행을 추가하는 방법을 알고 jTable있습니까?

답변:


171

TableModel모든 테이블 뒤에 데이터의 JTable의 핸들 뒤에. 테이블에서 행을 추가하고 제거하려면DefaultTableModel

이 모델로 테이블을 생성하려면 :

JTable table = new JTable(new DefaultTableModel(new Object[]{"Column1", "Column2"}));

행을 추가하려면 :

DefaultTableModel model = (DefaultTableModel) table.getModel();
model.addRow(new Object[]{"Column 1", "Column 2", "Column 3"});

이 방법으로 행을 제거 할 수도 있습니다.

DefaultTableModel에 대한 자세한 내용은 여기에서 확인할 수 있습니다 .


2
+1 이것은 좋은 대답입니다. 그러나 DefaultTableModel은 여러 모델 중 하나 일뿐입니다. 그러나 사용하기가 가장 쉽고 다른 것을 사용해야하지 않는 한 계속 사용하는 것이 좋습니다.
chessofnerd

2
코드의 첫 번째 라인으로 테이블을 생성, 나는 오류 "생성자 DefaultTableModel를 (객체 []) 정의되지 않는다"얻을
ThisClark

4
@ThisClark : DefaultTableModel 생성자의 경우 다음과 같이 rowCount를 추가해야합니다.JTable table = new JTable(new DefaultTableModel(new Object[]{"Column1", "Column2"}, 20));
Plenus Franckly

57

사용하다:

DefaultTableModel model = new DefaultTableModel(); 
JTable table = new JTable(model); 

// Create a couple of columns 
model.addColumn("Col1"); 
model.addColumn("Col2"); 

// Append a row 
model.addRow(new Object[]{"v1", "v2"});

12

을 추가하려면JTable 하는 방법 중 하나는 다음과 같습니다.

1) DefaultTableModel을 사용하여 테이블 생성 :

        DefaultTableModel model = new DefaultTableModel();
        model.addColumn("Code");
        model.addColumn("Name");
        model.addColumn("Quantity");
        model.addColumn("Unit Price");
        model.addColumn("Price");
        JTable table = new JTable(model);

2) 행을 추가하려면 :

        DefaultTableModel model = (DefaultTableModel) table.getModel();
        model.addRow(new Object[]{"Column 1", "Column 2", "Column 3","Column 4","Column 5"});

9

사용하다

    DefaultTableModel model = (DefaultTableModel) MyJTable.getModel();

    Vector row = new Vector();
    row.add("Enter data to column 1");
    row.add("Enter data to column 2");
    row.add("Enter data to column 3");
    model.addRow(row);

모델을 얻다 DefaultTableModel modelName = (DefaultTableModel) JTabelName.getModel();

벡터 만들기 Vector vectorName = new Vector();

row.addcomumns를 너무 많이 추가

곧 추가하십시오. modelName.addRow(Vector name);


2

완전성을 위해 먼저 addRow함수를 사용할 수 있도록 올바른 가져 오기가 있는지 확인하십시오 .

import javax.swing.table.*;

jTable이 이미 생성되었다고 가정하면 계속해서 필요한 매개 변수를 허용하는 행 추가 메소드를 생성 할 수 있습니다.

public void yourAddRow(String str1, String str2, String str3){
  DefaultTableModel yourModel = (DefaultTableModel) yourJTable.getModel();
  yourModel.addRow(new Object[]{str1, str2, str3});
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.