public class DefaultTableModel extends AbstractTableModel implements Serializable
Vectors の中の 1 つの Vector を使う TableModel の実装です。
警告: DefaultTableModel は Object の列クラスを返します。DefaultTableModel と TableRowSorter を同時に使用すると、String 以外のデータ型で使用すると負荷の大きい toString が大量に使用されます。DefaultTableModel と TableRowSorter を同時に使用するときは、適切な型を返せるように、getColumnClass をオーバーライドすることを強くお勧めします。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースとの互換性がなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。1.4 以降、すべての JavaBeansTM 用の長期間の格納サポートが java.beans パッケージに追加されています。XMLEncoder を参照してください。
TableModel, getDataVector()| 修飾子と型 | フィールドと説明 |
|---|---|
protected Vector |
columnIdentifiers
列識別子の
Vector です。 |
protected Vector |
dataVector
Object 値の Vectors の中の Vector です。 |
listenerList| コンストラクタと説明 |
|---|
DefaultTableModel()
列が 0、行が 0 のテーブルであるデフォルトの
DefaultTableModel を構築します。 |
DefaultTableModel(int rowCount, int columnCount)
rowCount と columnCount のオブジェクト値が null である DefaultTableModel を構築します。 |
DefaultTableModel(Object[][] data, Object[] columnNames)
DefaultTableModel を構築し、data と columnNames を setDataVector メソッドに渡して表を初期化します。 |
DefaultTableModel(Object[] columnNames, int rowCount)
null オブジェクト値の columnNames と rowCount に存在する要素数の列で、DefaultTableModel を構築します。 |
DefaultTableModel(Vector columnNames, int rowCount)
null オブジェクト値の columnNames と rowCount に存在する要素数の列で、DefaultTableModel を構築します。 |
DefaultTableModel(Vector data, Vector columnNames)
DefaultTableModel を構築し、data と columnNames を setDataVector メソッドに渡して表を初期化します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
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()
テーブルのデータ値を格納する一連の
Vectors の中の Vector を返します。 |
int |
getRowCount()
データテーブル内の行の数を返します。
|
Object |
getValueAt(int row, int column)
row および column に位置するセルの属性値を返します。 |
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 インスタンス変数を、新しい行の Vector である dataVector に置き換えます。 |
void |
setNumRows(int rowCount)
Java 2 プラットフォーム v1.3 では使用しません。
|
void |
setRowCount(int rowCount)
モデルの行数を設定します。
|
void |
setValueAt(Object aValue, int row, int column)
column および row に位置するセルのオブジェクト値を設定します。 |
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, removeTableModelListenerprotected Vector dataVector
Object 値の Vectors の中の Vector です。protected Vector columnIdentifiers
Vector です。public DefaultTableModel()
DefaultTableModel を構築します。public DefaultTableModel(int rowCount,
int columnCount)
rowCount と columnCount のオブジェクト値が null である DefaultTableModel を構築します。rowCount - テーブルが保持する行数columnCount - テーブルが保持する列数setValueAt(java.lang.Object, int, int)public DefaultTableModel(Vector columnNames, int rowCount)
null オブジェクト値の columnNames と rowCount に存在する要素数の列で、DefaultTableModel を構築します。各列の名前は、columnNames ベクターからとられます。columnNames - 新しい列の名前を格納する vector。これが null の場合、モデルは列を持たないrowCount - テーブルが保持する行数setDataVector(java.util.Vector, java.util.Vector), setValueAt(java.lang.Object, int, int)public DefaultTableModel(Object[] columnNames, int rowCount)
null オブジェクト値の columnNames と rowCount に存在する要素数の列で、DefaultTableModel を構築します。各列の名前は、columnNames 配列からとられます。columnNames - 新しい列の名前を格納する array。これが null の場合、モデルは列を持たないrowCount - テーブルが保持する行数setDataVector(java.util.Vector, java.util.Vector), setValueAt(java.lang.Object, int, int)public DefaultTableModel(Vector data, Vector columnNames)
DefaultTableModel を構築し、data と columnNames を setDataVector メソッドに渡して表を初期化します。data - テーブルのデータ (Object 値の Vector の中の Vector)columnNames - 新しい列の名前を格納する vectorgetDataVector(), setDataVector(java.util.Vector, java.util.Vector)public DefaultTableModel(Object[][] data, Object[] columnNames)
DefaultTableModel を構築し、data と columnNames を setDataVector メソッドに渡して表を初期化します。Object[][] 配列の最初のインデックスは行のインデックス、2 番目は列のインデックスです。data - テーブルのデータcolumnNames - 列の名前getDataVector(), setDataVector(java.util.Vector, java.util.Vector)public Vector getDataVector()
Vectors の中の 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)public void setDataVector(Vector dataVector, Vector columnIdentifiers)
dataVector インスタンス変数を、新しい行の Vector である dataVector に置き換えます。dataVector 内では、各行はいくつかの Object 値からなる Vector によって表されます。columnIdentifiers は、新しい列の名前です。columnIdentifiers の最初の名前は、dataVector の列 0 に対応します。dataVector の各行は、長すぎる場合は Vector を縮め、短すぎる場合は null 値を追加して、columnIdentifiers の列数と一致するように調整されます。
dataVector に対して null 値を渡すと、指定しない動作になり、例外が発生するおそれがあります。
dataVector - 新規のデータベクターcolumnIdentifiers - 列の名前getDataVector()public void setDataVector(Object[][] dataVector, Object[] columnIdentifiers)
dataVector インスタンス変数の値を、配列 dataVector の値で置き換えます。Object[][] 配列の最初のインデックスは行のインデックス、2 番目は列のインデックスです。columnIdentifiers は新しい列の名前です。dataVector - 新規のデータベクターcolumnIdentifiers - 列の名前setDataVector(Vector, Vector)public void newDataAvailable(TableModelEvent event)
fireTableChanged と同等です。event - 変更イベントpublic void newRowsAdded(TableModelEvent e)
Vector の setSize メソッドを使います。setSize メソッドは、長すぎるベクターを縮め、短すぎる場合は null を追加します。また、このメソッドはすべてのリスナーに tableChanged 通知メッセージを送ります。e - この TableModelEvent はどこに行が追加されたかを記述する。null の場合、すべての行が新しく追加されたと仮定されるgetDataVector()public void rowsRemoved(TableModelEvent event)
fireTableChanged と同等です。event - 変更イベントpublic void setNumRows(int rowCount)
setRowCount を使用してください。public void setRowCount(int rowCount)
rowCount 以降のすべての行が破棄されます。 setColumnCount(int)public void addRow(Vector rowData)
rowData が指定されていない場合は null になります。行の追加の通知が生成されます。rowData - 追加される行の任意のデータpublic void addRow(Object[] rowData)
rowData が指定されていない場合は null になります。行の追加の通知が生成されます。rowData - 追加される行の任意のデータpublic void insertRow(int row,
Vector rowData)
row に行を挿入します。新しい行の値は、rowData が指定されていない場合は null になります。行の追加の通知が生成されます。row - 挿入される行の行インデックスrowData - 追加される行の任意のデータArrayIndexOutOfBoundsException - 行が無効だった場合public void insertRow(int row,
Object[] rowData)
row に行を挿入します。新しい行の値は、rowData が指定されていない場合は null になります。行の追加の通知が生成されます。row - 挿入される行の行インデックスrowData - 追加される行の任意のデータArrayIndexOutOfBoundsException - 行が無効だった場合public void moveRow(int start,
int end,
int to)
start から end までの 1 行または複数行を、to の位置に移動します。移動後は、インデックス start にあった行が、インデックス to に移動します。このメソッドは、すべてのリスナーに tableChanged 通知メッセージを送ります。
Examples of moves:1. moveRow(1,3,5); a|B|C|D|e|f|g|h|i|j|k - before a|e|f|g|h|B|C|D|i|j|k - after
2. moveRow(6,7,1); a|b|c|d|e|f|G|H|i|j|k - before a|G|H|b|c|d|e|f|i|j|k - after
start - 移動する行の開始インデックスend - 移動する行の終了インデックスto - 行の移動先ArrayIndexOutOfBoundsException - テーブルの範囲外に移動される要素がある場合public void removeRow(int row)
row にある行を削除します。行の削除の通知がすべてのリスナーに送られます。row - 削除される行の行インデックスArrayIndexOutOfBoundsException - 行が無効だった場合public void setColumnIdentifiers(Vector columnIdentifiers)
newIdentifier の数が現在の列数より多い場合、モデルの各行の最後に新しい列が追加されます。newIdentifier の数が現在の列数より少ない場合、行の最後の余分な列がすべて破棄されます。 columnIdentifiers - 列識別子のベクター。null の場合は、モデルの列を 0 に設定するsetNumRows(int)public void setColumnIdentifiers(Object[] newIdentifiers)
newIdentifier の数が現在の列数より多い場合、モデルの各行の最後に新しい列が追加されます。newIdentifier の数が現在の列数より少ない場合、行の最後の余分な列がすべて破棄されます。 newIdentifiers - 列識別子の配列。null の場合は、モデルの列を 0 に設定するsetNumRows(int)public void setColumnCount(int columnCount)
null になります。新しいサイズが現在のサイズより小さい場合、インデックス columnCount 以降のすべての列が破棄されます。columnCount - モデルの新規の列数setColumnCount(int)public void addColumn(Object columnName)
columnName になります。この識別子の値は null でもかまいません。このメソッドは、すべてのリスナーに tableChanged 通知メッセージを送ります。このメソッドは、null をデータベクターとして使う addColumn(Object, Vector) のカバーです。columnName - 追加される列の識別子public void addColumn(Object columnName, Vector columnData)
columnName になります。この識別子の値は null でもかまいません。columnData は、列のデータの任意のベクターです。それが null の場合、列の値は null になります。そうでない場合、モデルに新しいデータが追加され、最初の要素は行 0 になります。このメソッドは、すべてのリスナーに tableChanged 通知メッセージを送ります。columnName - 追加される列の識別子columnData - 追加される列の任意のデータpublic void addColumn(Object columnName, Object[] columnData)
columnName になります。columnData は、列のデータの任意の配列です。それが null の場合、列の値は null になります。そうでない場合、モデルに新しいデータが追加され、最初の要素は行 0 になります。このメソッドは、すべてのリスナーに tableChanged 通知メッセージを送ります。public int getRowCount()
getRowCount、インタフェース: TableModelTableModel.getColumnCount()public int getColumnCount()
getColumnCount、インタフェース: TableModelTableModel.getRowCount()public String getColumnName(int column)
getColumnName、インタフェース: TableModelgetColumnName、クラス: AbstractTableModelcolumn - 照会される列columnIdentifiers の適切なメンバーの文字列値を使用したこの列の名前。columnIdentifiers にこのインデックスのエントリがない場合、スーパークラスが提供するデフォルト名が返される。public boolean isCellEditable(int row,
int column)
isCellEditable、インタフェース: TableModelisCellEditable、クラス: AbstractTableModelrow - 値が照会される行column - 値が照会される列setValueAt(java.lang.Object, int, int)public Object getValueAt(int row, int column)
row および column に位置するセルの属性値を返します。getValueAt、インタフェース: TableModelrow - 値が照会される行column - 値が照会される列ArrayIndexOutOfBoundsException - 無効な行または列が指定された場合public void setValueAt(Object aValue, int row, int column)
column および row に位置するセルのオブジェクト値を設定します。新しい値は aValue です。このメソッドは、tableChanged 通知を生成します。setValueAt、インタフェース: TableModelsetValueAt、クラス: AbstractTableModelaValue - 新規の値。null も可row - 値が変更される行column - 値が変更される列ArrayIndexOutOfBoundsException - 無効な行または列が指定された場合TableModel.getValueAt(int, int), TableModel.isCellEditable(int, int)protected static Vector convertToVector(Object[] anArray)
anArray - 変換される配列anArray が null の場合、null が返される バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.