クラスDefaultTableModel
java.lang.Object
javax.swing.table.AbstractTableModel
javax.swing.table.DefaultTableModel
- すべての実装されたインタフェース:
Serializable,TableModel
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では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。
- 関連項目:
-
フィールドのサマリー
フィールドクラスjavax.swing.table.AbstractTableModelで宣言されたフィールド
listenerList -
コンストラクタのサマリー
コンストラクタコンストラクタ説明列が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<? extends Vector> data, Vector<?> columnNames) DefaultTableModelを構築し、dataとcolumnNamesをsetDataVectorメソッドに渡して表を初期化します。 -
メソッドのサマリー
修飾子と型メソッド説明voidモデルに列を追加します。voidモデルに列を追加します。voidモデルに列を追加します。voidモデルの最後に行を追加します。voidモデルの最後に行を追加します。convertToVector(Object[] anArray) 配列と同じオブジェクトを格納するベクターを返します。convertToVector(Object[][] anArray) 配列と同じオブジェクトを格納する一連のベクターの中の1つのベクターを返します。intデータ・テーブル内の列の数を返します。getColumnName(int column) 列の名前を返します。テーブルのデータ値を格納する一連のVectorsの中のVectorを返します。intデータ・テーブル内の行の数を返します。getValueAt(int row, int column) rowおよびcolumnに位置するセルの属性値を返します。voidモデルのrowに行を挿入します。voidモデルのrowに行を挿入します。booleanisCellEditable(int row, int column) パラメータ値に関係なく、trueを返します。voidmoveRow(int start, int end, int to) モデルで、startからendまでの1行または複数行を、toの位置に移動します。voidnewDataAvailable(TableModelEvent event) fireTableChangedと同等です。void新しい行の列数が正しいことを確認します。voidremoveRow(int row) モデルのrowにある行を削除します。voidrowsRemoved(TableModelEvent event) fireTableChangedと同等です。voidsetColumnCount(int columnCount) モデルの列数を設定します。voidsetColumnIdentifiers(Object[] newIdentifiers) モデルの列識別子を置き換えます。voidsetColumnIdentifiers(Vector<?> columnIdentifiers) モデルの列識別子を置き換えます。voidsetDataVector(Object[][] dataVector, Object[] columnIdentifiers) dataVectorインスタンス変数の値を、配列dataVectorの値で置き換えます。voidsetDataVector(Vector<? extends Vector> dataVector, Vector<?> columnIdentifiers) 現在のdataVectorインスタンス変数を、新しい行のVectorであるdataVectorに置き換えます。voidsetNumRows(int rowCount) Java 2プラットフォームv1.3では使用しません。voidsetRowCount(int rowCount) モデルの行数を設定します。voidsetValueAt(Object aValue, int row, int column) columnおよびrowに位置するセルのオブジェクト値を設定します。クラスjavax.swing.table.AbstractTableModelで宣言されたメソッド
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, removeTableModelListener
-
フィールド詳細
-
dataVector
-
columnIdentifiers
protected Vector columnIdentifiers列識別子のVectorです。
-
-
コンストラクタの詳細
-
DefaultTableModel
public DefaultTableModel()列が0、行が0のテーブルであるデフォルトのDefaultTableModelを構築します。 -
DefaultTableModel
public DefaultTableModel(int rowCount, int columnCount) rowCountとcolumnCountのオブジェクト値がnullであるDefaultTableModelを構築します。- パラメータ:
rowCount- テーブルが保持する行数columnCount- テーブルが保持する列数- 関連項目:
-
DefaultTableModel
public DefaultTableModel(Vector<?> columnNames, int rowCount) nullオブジェクト値のcolumnNamesとrowCountに存在する要素数の列で、DefaultTableModelを構築します。 各列の名前は、columnNamesベクターからとられます。- パラメータ:
columnNames- 新しい列の名前を格納するvector。これがnullの場合、モデルは列を持たないrowCount- テーブルが保持する行数- 関連項目:
-
DefaultTableModel
public DefaultTableModel(Object[] columnNames, int rowCount) nullオブジェクト値のcolumnNamesとrowCountに存在する要素数の列で、DefaultTableModelを構築します。 各列の名前は、columnNames配列からとられます。- パラメータ:
columnNames- 新しい列の名前を格納するarray。これがnullの場合、モデルは列を持たないrowCount- テーブルが保持する行数- 関連項目:
-
DefaultTableModel
-
DefaultTableModel
-
-
メソッドの詳細
-
getDataVector
-
setDataVector
現在のdataVectorインスタンス変数を、新しい行のVectorであるdataVectorに置き換えます。dataVector内では、各行はいくつかのObject値からなるVectorとして表されます。columnIdentifiersは新しい列の名前です。columnIdentifiersの最初の名前は、dataVectorの列0にマップされます。dataVectorの各行は、長すぎる場合はVectorを切り詰め、短すぎる場合はnull値を追加して、columnIdentifiersの列数と一致するように調整されます。dataVectorに対してnull値を渡すと、指定しない動作になり、例外が発生するおそれがあります。- パラメータ:
dataVector- 新規のデータ・ベクターcolumnIdentifiers- 列の名前- 関連項目:
-
setDataVector
-
newDataAvailable
-
newRowsAdded
public void newRowsAdded(TableModelEvent e) 新しい行の列数が正しいことを確認します。 そのために、このメソッドはVectorのsetSizeメソッドを使用します。setSizeメソッドは、長すぎるベクターを切り詰め、短すぎる場合はnullを追加します。 また、このメソッドはすべてのリスナーにtableChanged通知メッセージを送ります。- パラメータ:
e- このTableModelEventはどこに行が追加されたかを記述する。nullの場合、すべての行が新しく追加されたと仮定される- 関連項目:
-
rowsRemoved
-
setNumRows
public void setNumRows(int rowCount) Java 2プラットフォームv1.3では使用しません。 代わりにsetRowCountを使用してください。- パラメータ:
rowCount- 新しい行数
-
setRowCount
public void setRowCount(int rowCount) モデルの行数を設定します。 新しいサイズが現在のサイズより大きい場合、モデルの最後に新しい行が追加されます。新しいサイズが現在のサイズより小さい場合、インデックスrowCount以降のすべての行が破棄されます。- パラメータ:
rowCount- モデルの行数- 導入されたバージョン:
- 1.3
- 関連項目:
-
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通知メッセージを送ります。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- テーブルの範囲外に移動される要素がある場合
-
removeRow
public void removeRow(int row) モデルのrowにある行を削除します。 行の削除の通知がすべてのリスナーに送られます。- パラメータ:
row- 削除される行の行インデックス- スロー:
ArrayIndexOutOfBoundsException- 行が無効だった場合
-
setColumnIdentifiers
public void setColumnIdentifiers(Vector<?> columnIdentifiers) モデルの列識別子を置き換えます。newIdentifierの数が現在の列数より多い場合、モデルの各行の最後に新しい列が追加されます。newIdentifierの数が現在の列数より少ない場合、行の最後の余分な列がすべて破棄されます。- パラメータ:
columnIdentifiers- 列識別子のベクター。nullの場合は、モデルの列を0に設定する- 関連項目:
-
setColumnIdentifiers
public void setColumnIdentifiers(Object[] newIdentifiers) モデルの列識別子を置き換えます。newIdentifierの数が現在の列数より多い場合、モデルの各行の最後に新しい列が追加されます。newIdentifierの数が現在の列数より少ない場合、行の最後の余分な列がすべて破棄されます。- パラメータ:
newIdentifiers- 列識別子の配列。nullの場合は、モデルの列を0に設定する- 関連項目:
-
setColumnCount
public void setColumnCount(int columnCount) モデルの列数を設定します。 新しいサイズが現在のサイズより大きい場合、モデルの最後に新しい列が追加されセル値はnullになります。 新しいサイズが現在のサイズより小さい場合、インデックスcolumnCount以降のすべての列が破棄されます。- パラメータ:
columnCount- モデルの新規の列数- 導入されたバージョン:
- 1.3
- 関連項目:
-
addColumn
public void addColumn(Object columnName) モデルに列を追加します。 新しい列の識別子はcolumnNameになります。この値はnullでもかまいません。 このメソッドは、すべてのリスナーにtableChanged通知メッセージを送ります。 このメソッドは、nullをデータ・ベクターとして使用するaddColumn(Object, Vector)のカバーです。- パラメータ:
columnName- 追加される列の識別子
-
addColumn
モデルに列を追加します。 新しい列の識別子はcolumnNameになります。この値はnullでもかまいません。columnDataはその列のオプションのデータ・ベクターです。 それがnullの場合、列の値はnullになります。 それ以外の場合、モデルに新しいデータが追加され、最初の要素は行0などになります。このメソッドは、すべてのリスナーにtableChanged通知メッセージを送ります。- パラメータ:
columnName- 追加される列の識別子columnData- 追加される列のオプションのデータ
-
addColumn
モデルに列を追加します。 新しい列の識別子はcolumnNameになります。columnDataはその列のオプションのデータ配列です。 それがnullの場合、列の値はnullになります。 それ以外の場合、モデルに新しいデータが追加され、最初の要素は行0などになります。このメソッドは、すべてのリスナーにtableChanged通知メッセージを送ります。- パラメータ:
columnName- 新しく作成された列の識別子columnData- 列に追加する新しいデータ- 関連項目:
-
getRowCount
-
getColumnCount
public int getColumnCount()データ・テーブル内の列の数を返します。- 定義:
getColumnCount、インタフェースTableModel- 戻り値:
- モデルの列数
- 関連項目:
-
getColumnName
public String getColumnName(int column) 列の名前を返します。- 定義:
getColumnName、インタフェースTableModel- オーバーライド:
getColumnName、クラスAbstractTableModel- パラメータ:
column- 照会される列- 戻り値:
columnIdentifiersの適切なメンバーの文字列値を使用したこの列の名前。columnIdentifiersにこのインデックスのエントリがない場合、スーパー・クラスが提供するデフォルト名が返される。
-
isCellEditable
public boolean isCellEditable(int row, int column) パラメータ値に関係なく、trueを返します。- 定義:
isCellEditable、インタフェースTableModel- オーバーライド:
isCellEditable、クラスAbstractTableModel- パラメータ:
row- 値が照会される行column- 値が照会される列- 戻り値:
- true
- 関連項目:
-
getValueAt
public Object getValueAt(int row, int column) rowおよびcolumnに位置するセルの属性値を返します。- 定義:
getValueAt、インタフェースTableModel- パラメータ:
row- 値が照会される行column- 値が照会される列- 戻り値:
- 指定されたセルのObject値
- スロー:
ArrayIndexOutOfBoundsException- 無効な行または列が指定された場合
-
setValueAt
public void setValueAt(Object aValue, int row, int column) columnおよびrowに位置するセルのオブジェクト値を設定します。aValueは新しい値です。 このメソッドはtableChanged通知を生成します。- 定義:
setValueAt、インタフェースTableModel- オーバーライド:
setValueAt、クラスAbstractTableModel- パラメータ:
aValue- 新規の値。nullも可row- 値が変更される行column- 値が変更される列- スロー:
ArrayIndexOutOfBoundsException- 無効な行または列が指定された場合- 関連項目:
-
convertToVector
-
convertToVector
-