//컬럼명을 만들어준다.
Vector<String> column1 = new Vector<String>();
column1.addElement("제품명");
column1.addElement("제품수량");
column1.addElement("제품가격");
column1.addElement("등록기간");
column1.addElement("유통기한");
//추가한 컬럼명으로 모델 생성하고 인자로 넣어줌
DefaultTableModel model = new DefaultTableModel(column1, 0);
제품명,제품수량,제품가격,등록기간,유통기한 컬럼을 가진 테이블이 만들어진다.
0은 비어있는 행을 추가하느냐 마느냐. 1로하면 아무것도 작성되지않은 행이 1개추가되서 테이블생성 필요없어서 0으로함
//이제 데이터를 넣을 거다.
//컬럼이 5개 만들어져서 5개에 데이터를 넣는다. 아무리 더추가해봤자 안들어감
Vector<String> row = new Vector<String>();
row.addElement("dd");
row.addElement("dd");
row.addElement("dd");
row.addElement("dd");
row.addElement("dd");
model.addRow(row);
//추가된 데이터들을 모델에 추가하고 모델을 테이블 인자로 넣어준다.
table = new JTable(model);
scrollPane.setViewportView(table);
//여기까지 하면 1행이 추가되면 컬럼별로 dd라는 데이터를 가지게된다.
//이벤트 발생시마다 추가하고싶다면
//생성을 같은이름으로 생성해주고
//데이터를 넣고 모델에 추가해주면 바로 2행으로 추가된다.
//아래 코드만 반복적으로 사용하면 실시간으로 테이블에 추가가능 하겠다.
row = new Vector<String>();
row.addElement("dd");
row.addElement("dd");
row.addElement("dd");
row.addElement("dd");
row.addElement("dd");
model.addRow(row);
JTable에 들어가는 인자로는 TableModel dm이나,
Object[][] rowdata,Object[] columnName,
Vector rowData, Vector columnName,
이외에도 몇개있음 아무튼 이렇게도 테이블 생성할 수 있다는 것만 알고 있으면된다.
1차원과 2차원 배열을 이용해 할 수 도 있지만, 이게더 효율적으로 보인다.
2차원은 아무래도 코드가 지저분해지니까 ㄴㄴ
'JAVA > 자바' 카테고리의 다른 글
자바 Abstract - 추상클래스 (0) | 2015.07.06 |
---|---|
자바 ResultSet 컬럼개수,레코드개수 알아내기 -Mysql (0) | 2015.07.05 |
자바 Swing 텍스트필드 포맷지정 (0) | 2015.07.05 |
자바 Swing ComboBox 값변경 확인 (0) | 2015.07.05 |
자바 InstanceOf 상속관계에서 형변환 가능한지 확인 (0) | 2015.07.03 |