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(tm)用の長期間の格納サポートが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, removeTableModelListener
protected 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
- 新しい列の名前を格納するvector
getDataVector()
, 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
、インタフェース: TableModel
TableModel.getColumnCount()
public int getColumnCount()
getColumnCount
、インタフェース: TableModel
TableModel.getRowCount()
public String getColumnName(int column)
getColumnName
、インタフェース: TableModel
getColumnName
、クラス: AbstractTableModel
column
- 照会される列columnIdentifiers
の適切なメンバーの文字列値を使用したこの列の名前。columnIdentifiers
にこのインデックスのエントリがない場合、スーパー・クラスが提供するデフォルト名が返される。public boolean isCellEditable(int row, int column)
isCellEditable
、インタフェース: TableModel
isCellEditable
、クラス: AbstractTableModel
row
- 値が照会される行column
- 値が照会される列setValueAt(java.lang.Object, int, int)
public Object getValueAt(int row, int column)
row
およびcolumn
に位置するセルの属性値を返します。getValueAt
、インタフェース: TableModel
row
- 値が照会される行column
- 値が照会される列ArrayIndexOutOfBoundsException
- 無効な行または列が指定された場合public void setValueAt(Object aValue, int row, int column)
column
およびrow
に位置するセルのオブジェクト値を設定します。aValue
は新しい値です。このメソッドはtableChanged
通知を生成します。setValueAt
、インタフェース: TableModel
setValueAt
、クラス: AbstractTableModel
aValue
- 新規の値。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, 2014, Oracle and/or its affiliates. All rights reserved.