|
Java プラットフォーム 1.2 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--javax.swing.table.AbstractTableModel | +--javax.swing.table.DefaultTableModel
セル値のオブジェクトを格納するために、一連の Vector の中の 1 つの Vector を使う TableModel の実装です。
注:
DefaultTableModel の API には、addColumn() メソッドと removeColumn() メソッドはありますが、インデックスで列を挿入するメソッド、または列を移動するメソッドはありません。それは、JTable がこのモデルの列の順序に基づいて列を表示しないからです。そのため、ここで列を配置し直してもあまり意味がありません。TableColumnModel の列順序付けメソッドを参照してください。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。
TableModel
,
getDataVector()
, 直列化された形式フィールドの概要 | |
protected Vector |
columnIdentifiers
列識別子の Vector です。 |
protected Vector |
dataVector
Object 値の Vector です。 |
クラス javax.swing.table.AbstractTableModel から継承したフィールド |
listenerList |
コンストラクタの概要 | |
DefaultTableModel()
列が 0、行が 0 のテーブルであるデフォルトの DefaultTableModel を構築します。 |
|
DefaultTableModel(int numRows,
int numColumns)
numRows および numColumns の null オブジェクト値で DefaultTableModel を構築します。 |
|
DefaultTableModel(Object[][] data,
Object[] columnNames)
DefaultTableModel を構築し、data と columnNames を setDataVector() メソッドに渡すことにより、そのテーブルを初期化します。 |
|
DefaultTableModel(Object[] columnNames,
int numRows)
columnNames にある要素と同じ数の列、および numRows の null オブジェクト値で DefaultTableModel を構築します。 |
|
DefaultTableModel(Vector columnNames,
int numRows)
columnNames にある要素と同じ数の列、および numRows の null オブジェクト値で DefaultTableModel を構築します。 |
|
DefaultTableModel(Vector data,
Vector columnNames)
DefaultTableModel を構築し、data と columnNames を setDataVector() メソッドに渡すことにより、テーブルを初期化します。 |
メソッドの概要 | |
void |
addColumn(Object columnName)
モデルに列を追加します。 |
void |
addColumn(Object columnName,
Object[] columnData)
名前が columnName のモデルに列を追加します。 |
void |
addColumn(Object columnName,
Vector columnData)
モデルに列を追加します。 |
void |
addRow(Object[] rowData)
モデルの最後に行を追加します。 |
void |
addRow(Vector rowData)
モデルの最後に行を追加します。 |
protected static Vector |
convertToVector(Object[] anArray)
配列と同じオブジェクトを格納する Vector を返します。 |
protected static Vector |
convertToVector(Object[][] anArray)
配列と同じオブジェクトを格納する一連の Vector の中の 1 つの Vector を返します。 |
int |
getColumnCount()
データテーブル内の列の数を返します。 |
String |
getColumnName(int column)
列の名前を返します。 |
Vector |
getDataVector()
テーブルのデータ値を格納する Vector 群の中の 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)
row および column にあるセルが編集可能な場合は、true を返します。 |
void |
moveRow(int startIndex,
int endIndex,
int toIndex)
モデルの startIndex から endIndex までの行を toIndex に移動します。 |
void |
newDataAvailable(TableModelEvent event)
fireTableChanged と同じです。 |
void |
newRowsAdded(TableModelEvent event)
新しい行が正しい列の数を持つことを確認します。 |
void |
removeRow(int row)
モデルの row にある行を削除します。 |
void |
rowsRemoved(TableModelEvent event)
fireTableChanged() と同じです。 |
void |
setColumnIdentifiers(Object[] newIdentifiers)
モデルの列識別子を置き換えます。 |
void |
setColumnIdentifiers(Vector newIdentifiers)
モデルの列識別子を置き換えます。 |
void |
setDataVector(Object[][] newData,
Object[] columnNames)
dataVector インスタンス変数の値を、配列 newData の値で置き換えます。 |
void |
setDataVector(Vector newData,
Vector columnNames)
現在の dataVector インスタンス変数を、新しい行の Vector である newData で置き換えます。 |
void |
setNumRows(int newSize)
モデルの行数を設定します。 |
void |
setValueAt(Object aValue,
int row,
int column)
column および row にあるセルのオブジェクト値を設定します。 |
クラス java.lang.Object から継承したメソッド |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
フィールドの詳細 |
protected Vector dataVector
protected Vector columnIdentifiers
コンストラクタの詳細 |
public DefaultTableModel()
public DefaultTableModel(int numRows, int numColumns)
numRows
- テーブルの行数numColumns
- テーブルの列数setValueAt(java.lang.Object, int, int)
public DefaultTableModel(Vector columnNames, int numRows)
columnNames
- 新しい列の名前を格納する Vector。null の場合、モデルは列を持たないnumRows
- テーブルの行数setDataVector(java.util.Vector, java.util.Vector)
,
setValueAt(java.lang.Object, int, int)
public DefaultTableModel(Object[] columnNames, int numRows)
columnNames
- 新しい列の名前を格納する配列。null の場合、モデルは列を持たないnumRows
- テーブルの行数setDataVector(java.util.Vector, java.util.Vector)
,
setValueAt(java.lang.Object, int, int)
public DefaultTableModel(Vector data, Vector columnNames)
data
- テーブルのデータcolumnNames
- 新しい列の名前を格納する VectorgetDataVector()
,
setDataVector(java.util.Vector, java.util.Vector)
public DefaultTableModel(Object[][] data, Object[] columnNames)
data
- テーブルのデータcolumnNames
- 列の名前getDataVector()
,
setDataVector(java.util.Vector, java.util.Vector)
メソッドの詳細 |
public Vector getDataVector()
((Vector)getDataVector().elementAt(1)).elementAt(5);
返される Vector は直接変更できます。セル値、行数は変更できます。モデルの列数を変更する必要がある場合は、addColumn()、removeColumn()、または setDataVector() の各メソッドを使います。dataVector の変更が終わったら、通知メソッドを使ってモデルに新しいデータを通知する必要があります。通知メソッドは、適切な TableModelListener メッセージを生成し、JTable およびこのモデルのほかの任意のリスナーに通知します。
newDataAvailable(javax.swing.event.TableModelEvent)
,
newRowsAdded(javax.swing.event.TableModelEvent)
,
setDataVector(java.util.Vector, java.util.Vector)
public void setDataVector(Vector newData, Vector columnNames)
newData
- 新しいデータベクトルcolumnNames
- 列の名前newDataAvailable(javax.swing.event.TableModelEvent)
,
getDataVector()
public void setDataVector(Object[][] newData, Object[] columnNames)
setDataVector(Vector, Vector)
public void newDataAvailable(TableModelEvent event)
public void newRowsAdded(TableModelEvent event)
getDataVector()
public void rowsRemoved(TableModelEvent event)
public void setColumnIdentifiers(Vector newIdentifiers)
newIdentifiers
- 列識別子の Vector。null はモデルを列なしに設定するsetNumRows(int)
public void setColumnIdentifiers(Object[] newIdentifiers)
newIdentifiers
- 列識別子の配列。null はモデルを列なしに設定するsetNumRows(int)
public void setNumRows(int newSize)
newSize
- 新しい行数setColumnIdentifiers(java.util.Vector)
public void addColumn(Object columnName)
columnName
- 追加される列の識別子public void addColumn(Object columnName, Vector columnData)
columnName
- 追加される列の識別子columnData
- 追加される列の任意のデータpublic void addColumn(Object columnName, Object[] columnData)
addColumn(Object, Vector)
public void addRow(Vector rowData)
rowData
- 追加される行の任意のデータpublic void addRow(Object[] rowData)
rowData
- 追加される行の任意のデータpublic void insertRow(int row, Vector rowData)
row
- 挿入される行の行インデックスrowData
- 追加される行の任意のデータpublic void insertRow(int row, Object[] rowData)
row
- 挿入される行の行インデックスrowData
- 追加される行の任意のデータpublic void moveRow(int startIndex, int endIndex, int toIndex)
移動例:
1. moveRow(1,3,5);
a|B|C|D|e|f|g|h|i|j|k - 移動前 a|e|f|B|C|D|g|h|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 - 移動後
startIndex
- 移動する行の開始インデックスendIndex
- 移動する行の終了インデックスtoIndex
- 行の移動先public void removeRow(int row)
row
- 削除される行の行インデックスpublic int getRowCount()
public int getColumnCount()
public String getColumnName(int column)
public boolean isCellEditable(int row, int column)
row
- 値が参照される行column
- 値が参照される列setValueAt(java.lang.Object, int, int)
public Object getValueAt(int row, int column)
row
- 値が参照される行column
- 値が参照される列public void setValueAt(Object aValue, int row, int column)
aValue
- 新しい値。null も可row
- 値が変更される行column
- 値が変更される列protected static Vector convertToVector(Object[] anArray)
protected static Vector convertToVector(Object[][] anArray)
|
Java プラットフォーム 1.2 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |