JavaTM Platform
Standard Ed. 6

javax.swing.table
클래스 DefaultTableModel

java.lang.Object 
  상위를 확장 javax.swing.table.AbstractTableModel 
      상위를 확장 javax.swing.table.DefaultTableModel
모든 구현된 인터페이스:
Serializable , TableModel


public class DefaultTableModel
extends AbstractTableModel
implements Serializable

셀치의 객체를 포함하기 위해서, 일련의 Vector 안의 1 개의 Vector 를 사용하는 TableModel 의 구현입니다.

경고: DefaultTableModelObject 의 열클래스를 돌려줍니다. DefaultTableModelTableRowSorter 를 동시에 사용하면(자),String 이외의 데이터형으로 사용하면(자) 부하의 큰 toString 가 대량으로 사용됩니다. DefaultTableModelTableRowSorter 를 동시에 사용할 때는, 적절한 형태를 돌려줄 수 있도록(듯이),getColumnClass 를 오버라이드(override) 하는 것을 강하게 추천합니다.

경고: 이 클래스의 직렬화 된 객체는, 향후의 Swing 릴리스와 호환은 아니게 될 예정입니다. 현재의 직렬화의 지원는, 단기간의 운용이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. JDK Version 1.4 이후, 모든 JavaBeans 의 장기간의 운용 지원는,java.beans 패키지에 추가되고 있습니다. 자세한 것은,XMLEncoder 를 참조해 주세요.

관련 항목:
TableModel , getDataVector()

필드의 개요
protected  Vector columnIdentifiers
          열식별자의 Vector 입니다.
protected  Vector dataVector
          Object 치의 Vector 안의 Vector 입니다.
 
클래스 javax.swing.table. AbstractTableModel 로부터 상속된 필드
listenerList
 
생성자 의 개요
DefaultTableModel ()
          열이 0, 행이 0 의 테이블인 디폴트의 DefaultTableModel 를 구축합니다.
DefaultTableModel (int rowCount, int columnCount)
          rowCountcolumnCount 의 객체치가 nullDefaultTableModel 를 구축합니다.
DefaultTableModel (Object [][] data, Object [] columnNames)
          DefaultTableModel 를 구축해,setDataVector 메소드에 datacolumnNames 를 건네주어 테이블을 초기화합니다.
DefaultTableModel (Object [] columnNames, int rowCount)
          columnNames 내의 요소수와 같은 수의 열을 가져,rowCount 의 객체치가 nullDefaultTableModel 를 구축합니다.
DefaultTableModel (Vector  columnNames, int rowCount)
          columnNames 내의 요소수와 같은 수의 열을 가져,rowCount 의 객체치가 nullDefaultTableModel 를 구축합니다.
DefaultTableModel (Vector  data, Vector  columnNames)
          DefaultTableModel 를 구축해,setDataVector 메소드에 datacolumnNames 를 건네주어 테이블을 초기화합니다.
 
메소드의 개요
 void addColumn (Object  columnName)
          모델에 열을 추가합니다.
 void addColumn (Object  columnName, Object [] columnData)
          모델에 열을 추가합니다.
 void addColumn (Object  columnName, Vector  columnData)
          모델에 열을 추가합니다.
 void addRow (Object [] rowData)
          모델의 마지막에 행을 추가합니다.
 void addRow (Vector  rowData)
          모델의 마지막에 행을 추가합니다.
protected static Vector convertToVector (Object [] anArray)
          배열과 같은 객체를 포함하는 벡터를 돌려줍니다.
protected static Vector convertToVector (Object [][] anArray)
          배열과 같은 객체를 포함하는 일련의 벡터안의 1 개의 벡터를 돌려줍니다.
 int getColumnCount ()
          데이터 테이블내의 열의 수를 돌려줍니다.
 String getColumnName (int column)
          열의 이름을 돌려줍니다.
 Vector getDataVector ()
          테이블의 데이터값를 포함하는 일련의 Vector 안의 Vector 를 돌려줍니다.
 int getRowCount ()
          데이터 테이블내의 행의 수를 돌려줍니다.
 Object getValueAt (int row, int column)
          rowcolumn 에 위치하는 셀의 속성치를 돌려줍니다.
 void insertRow (int row, Object [] rowData)
          모델의 row 에 행을 추가합니다.
 void insertRow (int row, Vector  rowData)
          모델의 row 에 행을 추가합니다.
 boolean isCellEditable (int row, int column)
          파라미터치에 관계없이, true 를 돌려줍니다.
 void moveRow (int start, int end, int to)
          모델로,start 로부터 end 까지의 1 행 또는 복수행을,to 의 위치로 이동합니다.
 void newDataAvailable (TableModelEvent  event)
          fireTableChanged 메소드와 같습니다.
 void newRowsAdded (TableModelEvent  e)
          새로운 행의 렬수가 올바른 것을 확인합니다.
 void removeRow (int row)
          모델의 row 에 있는 행을 삭제합니다.
 void rowsRemoved (TableModelEvent  event)
          fireTableChanged 메소드와 같습니다.
 void setColumnCount (int columnCount)
          모델의 렬수를 설정합니다.
 void setColumnIdentifiers (Object [] newIdentifiers)
          모델의 열식별자를 옮겨놓습니다.
 void setColumnIdentifiers (Vector  columnIdentifiers)
          모델의 열식별자를 옮겨놓습니다.
 void setDataVector (Object [][] dataVector, Object [] columnIdentifiers)
          dataVector 인스턴스 변수의 값을, 배열 dataVector 의 값으로 옮겨놓습니다.
 void setDataVector (Vector  dataVector, Vector  columnIdentifiers)
          현재의 dataVector 인스턴스 변수를, 새로운 행의 VectordataVector 에 옮겨놓습니다.
 void setNumRows (int rowCount)
          Java 2 플랫폼 1.3 으로 폐지되었습니다.
 void setRowCount (int rowCount)
          모델의 행수를 설정합니다.
 void setValueAt (Object  aValue, int row, int column)
          columnrow 에 위치하는 셀의 객체치를 설정합니다.
 
클래스 javax.swing.table. AbstractTableModel 로부터 상속된 메소드
addTableModelListener , findColumn , fireTableCellUpdated , fireTableChanged , fireTableDataChanged , fireTableRowsDeleted , fireTableRowsInserted , fireTableRowsUpdated , fireTableStructureChanged , getColumnClass , getListeners , getTableModelListeners , removeTableModelListener
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

필드의 상세

dataVector

protected Vector  dataVector
Object 치의 Vector 안의 Vector 입니다.


columnIdentifiers

protected Vector  columnIdentifiers
열식별자의 Vector 입니다.

생성자 의 상세

DefaultTableModel

public DefaultTableModel()
열이 0, 행이 0 의 테이블인 디폴트의 DefaultTableModel 를 구축합니다.


DefaultTableModel

public DefaultTableModel(int rowCount,
                         int columnCount)
rowCountcolumnCount 의 객체치가 nullDefaultTableModel 를 구축합니다.

파라미터:
rowCount - 테이블이 보관 유지하는 행수
columnCount - 테이블이 보관 유지하는 렬수
관련 항목:
setValueAt(java.lang.Object, int, int)

DefaultTableModel

public DefaultTableModel(Vector  columnNames,
                         int rowCount)
columnNames 내의 요소수와 같은 수의 열을 가져,rowCount 의 객체치가 nullDefaultTableModel 를 구축합니다. 각 열의 이름은,columnNames 벡터로부터 빼앗깁니다.

파라미터:
columnNames - 새로운 열의 이름을 포함하는 vector. null 의 경우, 모델은 열을 가지지 않는
rowCount - 테이블이 보관 유지하는 행수
관련 항목:
setDataVector(java.util.Vector, java.util.Vector) , setValueAt(java.lang.Object, int, int)

DefaultTableModel

public DefaultTableModel(Object [] columnNames,
                         int rowCount)
columnNames 내의 요소수와 같은 수의 열을 가져,rowCount 의 객체치가 nullDefaultTableModel 를 구축합니다. 각 열의 이름은,columnNames 배열로부터 빼앗깁니다.

파라미터:
columnNames - 새로운 열의 이름을 포함하는 array. null 의 경우, 모델은 열을 가지지 않는
rowCount - 테이블이 보관 유지하는 행수
관련 항목:
setDataVector(java.util.Vector, java.util.Vector) , setValueAt(java.lang.Object, int, int)

DefaultTableModel

public DefaultTableModel(Vector  data,
                         Vector  columnNames)
DefaultTableModel 를 구축해,setDataVector 메소드에 datacolumnNames 를 건네주어 테이블을 초기화합니다.

파라미터:
data - 테이블의 데이터 (Object 치의 Vector 안의 Vector)
columnNames - 새로운 열의 이름을 포함하는 vector
관련 항목:
getDataVector() , setDataVector(java.util.Vector, java.util.Vector)

DefaultTableModel

public DefaultTableModel(Object [][] data,
                         Object [] columnNames)
DefaultTableModel 를 구축해,setDataVector 메소드에 datacolumnNames 를 건네주어 테이블을 초기화합니다. Object[][] 배열의 최초의 인덱스는 행의 인덱스, 2 번째는 열의 인덱스입니다.

파라미터:
data - 테이블의 데이터
columnNames - 열의 이름
관련 항목:
getDataVector() , setDataVector(java.util.Vector, java.util.Vector)
메소드의 상세

getDataVector

public Vector  getDataVector()
테이블의 데이터값를 포함하는 일련의 Vector 안의 Vector 를 돌려줍니다. 외부 벡터에 포함되고 있는 벡터는 각각 단일행의 값입니다. 즉, 행 1, 열 5 의 셀은 다음과 같이 지정합니다.

((Vector) getDataVector(). elementAt(1)). elementAt(5);

반환값:
테이블의 데이터의 값을 포함하는 일련의 벡터안의 벡터
관련 항목:
newDataAvailable(javax.swing.event.TableModelEvent) , newRowsAdded(javax.swing.event.TableModelEvent) , setDataVector(java.util.Vector, java.util.Vector)

setDataVector

public void setDataVector(Vector  dataVector,
                          Vector  columnIdentifiers)
현재의 dataVector 인스턴스 변수를, 새로운 행의 VectordataVector 에 옮겨놓습니다. dataVector 내에서는, 각 행은 몇개의 Object 치로부터 되는 Vector 에 의해 나타내집니다. columnIdentifiers 는, 새로운 열의 이름입니다. columnIdentifiers 의 최초의 이름은,dataVector 의 열 0 에 대응합니다. dataVector 의 각 행은, 너무 긴 경우는 Vector 를 줄여 너무 짧은 경우는 null 치를 추가해,columnIdentifiers 의 렬수와 일치하도록(듯이) 조정됩니다.

dataVector 에 대해서 null 치를 건네주면(자), 지정하지 않는 동작이 되어, 예외가 발생할 우려가 있습니다.

파라미터:
dataVector - 신규의 데이터 벡터
columnIdentifiers - 열의 이름
관련 항목:
getDataVector()

setDataVector

public void setDataVector(Object [][] dataVector,
                          Object [] columnIdentifiers)
dataVector 인스턴스 변수의 값을, 배열 dataVector 의 값으로 옮겨놓습니다. Object[][] 배열의 최초의 인덱스는 행의 인덱스, 2 번째는 열의 인덱스입니다. columnIdentifiers 는 새로운 열의 이름입니다.

파라미터:
dataVector - 신규의 데이터 벡터
columnIdentifiers - 열의 이름
관련 항목:
setDataVector(Vector, Vector)

newDataAvailable

public void newDataAvailable(TableModelEvent  event)
fireTableChanged 메소드와 같습니다.

파라미터:
event - 변경 이벤트

newRowsAdded

public void newRowsAdded(TableModelEvent  e)
새로운 행의 렬수가 올바른 것을 확인합니다. 그 때문에(위해), 이 메소드는 VectorsetSize 메소드를 사용합니다. setSize 메소드는, 너무 긴 벡터를 줄여 너무 짧은 경우는 null 를 추가합니다. 또, 이 메소드는 모든 청취자에게 tableChanged 통지 메세지를 보냅니다.

파라미터:
e - 이 TableModelEvent 는 어디에 행이 추가되었는지를 기술한다. null 의 경우, 모든 행이 새롭게 추가되었다 (와)과 가정되는
관련 항목:
getDataVector()

rowsRemoved

public void rowsRemoved(TableModelEvent  event)
fireTableChanged 메소드와 같습니다.

파라미터:
event - 변경 이벤트

setNumRows

public void setNumRows(int rowCount)
Java 2 플랫폼 1.3 으로 폐지되었습니다. 대신에 setRowCount 를 사용해 주세요.


setRowCount

public void setRowCount(int rowCount)
모델의 행수를 설정합니다. 새로운 사이즈가 현재의 사이즈보다 큰 경우, 모델의 마지막에 새로운 행이 추가됩니다. 새로운 사이즈가 현재의 사이즈보다 작은 경우, 인덱스 rowCount 이후의 모든 행이 파기됩니다.

도입된 버젼:
1.3
관련 항목:
setColumnCount(int)

addRow

public void addRow(Vector  rowData)
모델의 마지막에 행을 추가합니다. 새로운 행의 값은,rowData 가 지정되어 있지 않은 경우는 null 가 됩니다. 행의 추가의 통지가 생성됩니다.

파라미터:
rowData - 추가되는 행의 임의의 데이터

addRow

public void addRow(Object [] rowData)
모델의 마지막에 행을 추가합니다. 새로운 행의 값은,rowData 가 지정되어 있지 않은 경우는 null 가 됩니다. 행의 추가의 통지가 생성됩니다.

파라미터:
rowData - 추가되는 행의 임의의 데이터

insertRow

public void insertRow(int row,
                      Vector  rowData)
모델의 row 에 행을 추가합니다. 새로운 행의 값은,rowData 가 지정되어 있지 않은 경우는 null 가 됩니다. 행의 추가의 통지가 생성됩니다.

파라미터:
row - 삽입되는 행의 행 인덱스
rowData - 추가되는 행의 임의의 데이터
예외:
ArrayIndexOutOfBoundsException - 행이 무효였던 경우

insertRow

public void insertRow(int row,
                      Object [] rowData)
모델의 row 에 행을 추가합니다. 새로운 행의 값은,rowData 가 지정되어 있지 않은 경우는 null 가 됩니다. 행의 추가의 통지가 생성됩니다.

파라미터:
row - 삽입되는 행의 행 인덱스
rowData - 추가되는 행의 임의의 데이터
예외:
ArrayIndexOutOfBoundsException - 행이 무효였던 경우

moveRow

public void moveRow(int start,
                    int end,
                    int to)
모델로,start 로부터 end 까지의 1 행 또는 복수행을,to 의 위치로 이동합니다. 이동 후는, 인덱스 start 에 있던 행이, 인덱스 to 로 이동합니다. 이 메소드는, 모든 청취자에게 tableChanged 통지 메세지를 보냅니다.

  이동예:
  

1. moveRow(1,3,5); a|B|C|D|e|f|g|h|i|j|k - 이동전 a|e|f|g|h|B|C|D|i|j|k - 이동 후

2. moveRow(6,7,1); a|b|c|d|e|f|G|H|i|j|k - 이동전 a|G|H|b|c|d|e|f|i|j|k - 이동 후

파라미터:
start - 이동하는 행의 개시 인덱스
end - 이동하는 행의 종료 인덱스
to - 행의 이동처
예외:
ArrayIndexOutOfBoundsException - 테이블의 범위외에 이동되는 요소가 어느 경우

removeRow

public void removeRow(int row)
모델의 row 에 있는 행을 삭제합니다. 행의 삭제의 통지가 모든 청취자에게 보내집니다.

파라미터:
row - 삭제되는 행의 행 인덱스
예외:
ArrayIndexOutOfBoundsException - 행이 무효였던 경우

setColumnIdentifiers

public void setColumnIdentifiers(Vector  columnIdentifiers)
모델의 열식별자를 옮겨놓습니다. newIdentifier 의 수가 현재의 렬수보다 많은 경우, 모델의 각 행의 마지막에 새로운 열이 추가됩니다. newIdentifier 의 수가 현재의 렬수보다 적은 경우, 행의 마지막 여분의 열이 모두 파기됩니다.

파라미터:
columnIdentifiers - 열식별자의 벡터. null 의 경우는, 모델의 열을 0 으로 설정하는
관련 항목:
setNumRows(int)

setColumnIdentifiers

public void setColumnIdentifiers(Object [] newIdentifiers)
모델의 열식별자를 옮겨놓습니다. newIdentifier 의 수가 현재의 렬수보다 많은 경우, 모델의 각 행의 마지막에 새로운 열이 추가됩니다. newIdentifier 의 수가 현재의 렬수보다 적은 경우, 행의 마지막 여분의 열이 모두 파기됩니다.

파라미터:
newIdentifiers - 열식별자의 배열. null 의 경우, 모델의 열을 0 으로 설정하는
관련 항목:
setNumRows(int)

setColumnCount

public void setColumnCount(int columnCount)
모델의 렬수를 설정합니다. 새로운 사이즈가 현재의 사이즈보다 큰 경우, 모델의 마지막에 새로운 열이 추가되고 셀치는 null 가 됩니다. 새로운 사이즈가 현재의 사이즈보다 작은 경우, 인덱스 columnCount 이후의 모든 열이 파기됩니다.

파라미터:
columnCount - 모델의 신규의 렬수
도입된 버젼:
1.3
관련 항목:
setColumnCount(int)

addColumn

public void addColumn(Object  columnName)
모델에 열을 추가합니다. 새로운 열의 식별자는 columnName 가 됩니다. 이 식별자의 값은 null 에서도 괜찮습니다. 이 메소드는, 모든 청취자에게 tableChanged 통지 메세지를 보냅니다. 이 메소드는,null 를 데이터 벡터로서 사용하는 addColumn(Object, Vector) 의 커버입니다.

파라미터:
columnName - 추가되는 열의 식별자

addColumn

public void addColumn(Object  columnName,
                      Vector  columnData)
모델에 열을 추가합니다. 새로운 열의 식별자는 columnName 가 됩니다. 이 식별자의 값은 null 에서도 괜찮습니다. columnData 는, 열의 데이터의 임의의 벡터입니다. 그것이 null 의 경우, 열의 값은 null 가 됩니다. 그렇지 않은 경우, 모델에 새로운 데이터가 추가되어 최초의 요소는 행 0 이 됩니다. 이 메소드는, 모든 청취자에게 tableChanged 통지 메세지를 보냅니다.

파라미터:
columnName - 추가되는 열의 식별자
columnData - 추가되는 열의 임의의 데이터

addColumn

public void addColumn(Object  columnName,
                      Object [] columnData)
모델에 열을 추가합니다. 새로운 열의 식별자는 columnName 가 됩니다. columnData 는, 열의 데이터의 임의의 배열입니다. 그것이 null 의 경우, 열의 값은 null 가 됩니다. 그렇지 않은 경우, 모델에 새로운 데이터가 추가되어 최초의 요소는 행 0 이 됩니다. 이 메소드는, 모든 청취자에게 tableChanged 통지 메세지를 보냅니다.

관련 항목:
addColumn(Object, Vector)

getRowCount

public int getRowCount()
데이터 테이블내의 행의 수를 돌려줍니다.

정의:
인터페이스 TableModel 내의 getRowCount
반환값:
모델의 행수
관련 항목:
TableModel.getColumnCount()

getColumnCount

public int getColumnCount()
데이터 테이블내의 열의 수를 돌려줍니다.

정의:
인터페이스 TableModel 내의 getColumnCount
반환값:
모델의 렬수
관련 항목:
TableModel.getRowCount()

getColumnName

public String  getColumnName(int column)
열의 이름을 돌려줍니다.

정의:
인터페이스 TableModel 내의 getColumnName
오버라이드(override):
클래스 AbstractTableModel 내의 getColumnName
파라미터:
column - 조회되는 열
반환값:
columnIdentifiers 의 적절한 멤버의 캐릭터 라인치를 사용한 이 열의 이름. columnIdentifiers 에 이 인덱스의 엔트리가 없는 경우, 슈퍼 클래스가 제공하는 디폴트명이 반환된다

isCellEditable

public boolean isCellEditable(int row,
                              int column)
파라미터치에 관계없이, true 를 돌려줍니다.

정의:
인터페이스 TableModel 내의 isCellEditable
오버라이드(override):
클래스 AbstractTableModel 내의 isCellEditable
파라미터:
row - 치가 조회되는 행
column - 치가 조회되는 열
반환값:
true
관련 항목:
setValueAt(java.lang.Object, int, int)

getValueAt

public Object  getValueAt(int row,
                         int column)
rowcolumn 에 위치하는 셀의 속성치를 돌려줍니다.

정의:
인터페이스 TableModel 내의 getValueAt
파라미터:
row - 치가 조회되는 행
column - 치가 조회되는 열
반환값:
지정된 셀의 Object 치
예외:
ArrayIndexOutOfBoundsException - 무효인 행 또는 열이 지정되었을 경우

setValueAt

public void setValueAt(Object  aValue,
                       int row,
                       int column)
columnrow 에 위치하는 셀의 객체치를 설정합니다. 새로운 값은 aValue 입니다. 이 메소드는,tableChanged 통지를 생성합니다.

정의:
인터페이스 TableModel 내의 setValueAt
오버라이드(override):
클래스 AbstractTableModel 내의 setValueAt
파라미터:
aValue - 신규의 값. null 도 가능
row - 치가 변경되는 행
column - 치가 변경되는 열
예외:
ArrayIndexOutOfBoundsException - 무효인 행 또는 열이 지정되었을 경우
관련 항목:
TableModel.getValueAt(int, int) , TableModel.isCellEditable(int, int)

convertToVector

protected static Vector  convertToVector(Object [] anArray)
배열과 같은 객체를 포함하는 벡터를 돌려줍니다.

파라미터:
anArray - 변환되는 배열
반환값:
신규의 벡터. anArraynull 의 경우,null 가 반환된다

convertToVector

protected static Vector  convertToVector(Object [][] anArray)
배열과 같은 객체를 포함하는 일련의 벡터안의 1 개의 벡터를 돌려줍니다.

파라미터:
anArray - 변환되는 double 배열
반환값:
신규의 벡터. anArraynull 의 경우,null 가 반환된다

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.