|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--javax.swing.table.AbstractTableModel
この抽象クラスは、TableModel
インタフェースのほとんどのメソッドのデフォルトの実装を提供します。このクラスはリスナーを管理するほか、TableModelEvents
を生成し、それらをリスナーにディスパッチするための機能を提供します。具象 TableModel
を AbstractTableModel
のサブクラスとして作成するには、以下の 3 つのメソッドの実装を提供してください。
public int getRowCount(); public int getColumnCount(); public Object getValueAt(int row, int column);
警告:
このクラスの直列化されたオブジェクトは、今後の Swing のリリースとは互換性を持ちません。現在の直列化サポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。1.4 では、すべての JavaBeansTM の長期運用サポートが、 java.beans
パッケージに追加されました。XMLEncoder
を参照してください。
フィールドの概要 | |
protected EventListenerList |
listenerList
リスナーのリストです。 |
コンストラクタの概要 | |
AbstractTableModel()
|
メソッドの概要 | |
void |
addTableModelListener(TableModelListener l)
データモデルが変更されるたびに通知されるリストにリスナーを追加します。 |
int |
findColumn(String columnName)
指定された名前の列を返します。 |
void |
fireTableCellUpdated(int row,
int column)
[row, column] にあるセルの値が更新されたことを、すべてのリスナーに通知します。 |
void |
fireTableChanged(TableModelEvent e)
このテーブルモデルのリスナーとして登録されているすべての TableModelListeners に、指定された通知イベントを転送します。 |
void |
fireTableDataChanged()
テーブルの行のすべてのセル値が変更されている可能性があることを、すべてのリスナーに通知します。 |
void |
fireTableRowsDeleted(int firstRow,
int lastRow)
[firstRow, lastRow] の範囲 (どちらの値も含む) で行が削除されたことを、すべてのリスナーに通知します。 |
void |
fireTableRowsInserted(int firstRow,
int lastRow)
[firstRow, lastRow] の範囲 (どちらの値も含む) で行が挿入されたことを、すべてのリスナーに通知します。 |
void |
fireTableRowsUpdated(int firstRow,
int lastRow)
[firstRow, lastRow] の範囲 (どちらの値も含む) で行が更新されたことを、すべてのリスナーに通知します。 |
void |
fireTableStructureChanged()
テーブルの構造が変更されたことをすべてのリスナーに通知します。 |
Class |
getColumnClass(int columnIndex)
columnIndex に関わらず Object.class を返します。 |
String |
getColumnName(int column)
スプレッドシートの規約を使って、列のデフォルト名 (A、B、C、...Z、AA、AB など) を返します。 |
EventListener[] |
getListeners(Class listenerType)
この AbstractTableModel 上で FooListener として現在登録されている、すべてのオブジェクトからなる配列を返します。 |
TableModelListener[] |
getTableModelListeners()
このモデルに登録された、すべてのテーブルモデルリスナーからなる配列を返します。 |
boolean |
isCellEditable(int rowIndex,
int columnIndex)
false を返します。 |
void |
removeTableModelListener(TableModelListener l)
データモデルが変更されるたびに通知されるリストからリスナーを削除します。 |
void |
setValueAt(Object aValue,
int rowIndex,
int columnIndex)
空の実装が提供されるので、データモデルが編集できない場合、ユーザはこのメソッドを実装する必要はありません。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
インタフェース javax.swing.table.TableModel から継承したメソッド |
getColumnCount, getRowCount, getValueAt |
フィールドの詳細 |
protected EventListenerList listenerList
コンストラクタの詳細 |
public AbstractTableModel()
メソッドの詳細 |
public String getColumnName(int column)
column
が見つからない場合は、空の文字列を返します。
TableModel
内の getColumnName
column
- 照会される列
column
のデフォルト名が格納されている文字列public int findColumn(String columnName)
TableModel
インタフェースにはなく、JTable
はこれを使用しません。
columnName
- 配置される列の名前を格納する文字列
columnName
を持つ列。列が見つからない場合は -1public Class getColumnClass(int columnIndex)
columnIndex
に関わらず Object.class
を返します。
TableModel
内の getColumnClass
columnIndex
- 照会される列
public boolean isCellEditable(int rowIndex, int columnIndex)
TableModel
内の isCellEditable
rowIndex
- 照会される行columnIndex
- 照会される列
TableModel.setValueAt(java.lang.Object, int, int)
public void setValueAt(Object aValue, int rowIndex, int columnIndex)
TableModel
内の setValueAt
aValue
- セルに割り当てる値rowIndex
- セルの行columnIndex
- セルの列TableModel.getValueAt(int, int)
,
TableModel.isCellEditable(int, int)
public void addTableModelListener(TableModelListener l)
TableModel
内の addTableModelListener
l
- TableModelListenerpublic void removeTableModelListener(TableModelListener l)
TableModel
内の removeTableModelListener
l
- TableModelListenerpublic TableModelListener[] getTableModelListeners()
TableModelListener
すべて。テーブルモデルリスナーが登録されていない場合は空の配列addTableModelListener(javax.swing.event.TableModelListener)
,
removeTableModelListener(javax.swing.event.TableModelListener)
public void fireTableDataChanged()
JTable
はテーブルの描画を最初からやり直す必要があります。列の順序としてのテーブルの構造は同じと見なされます。
TableModelEvent
,
EventListenerList
,
JTable.tableChanged(TableModelEvent)
public void fireTableStructureChanged()
JTable
がこのイベントを受け取り、autoCreateColumnsFromModel
フラグが設定されている場合、JTable
はそれまで保持していたテーブルの列をすべて破棄し、モデルでの順序に従ってデフォルトの列を再び割り当てます。これは、JTable
で setModel(TableModel)
を呼び出すのと同じです。
TableModelEvent
,
EventListenerList
public void fireTableRowsInserted(int firstRow, int lastRow)
[firstRow, lastRow]
の範囲 (どちらの値も含む) で行が挿入されたことを、すべてのリスナーに通知します。
firstRow
- 最初の行lastRow
- 最後の行TableModelEvent
,
EventListenerList
public void fireTableRowsUpdated(int firstRow, int lastRow)
[firstRow, lastRow]
の範囲 (どちらの値も含む) で行が更新されたことを、すべてのリスナーに通知します。
firstRow
- 最初の行lastRow
- 最後の行TableModelEvent
,
EventListenerList
public void fireTableRowsDeleted(int firstRow, int lastRow)
[firstRow, lastRow]
の範囲 (どちらの値も含む) で行が削除されたことを、すべてのリスナーに通知します。
firstRow
- 最初の行lastRow
- 最後の行TableModelEvent
,
EventListenerList
public void fireTableCellUpdated(int row, int column)
[row, column]
にあるセルの値が更新されたことを、すべてのリスナーに通知します。
row
- 更新されたセルの行column
- 更新されたセルの列TableModelEvent
,
EventListenerList
public void fireTableChanged(TableModelEvent e)
TableModelListeners
に、指定された通知イベントを転送します。
e
- 転送されるイベントaddTableModelListener(javax.swing.event.TableModelListener)
,
TableModelEvent
,
EventListenerList
public EventListener[] getListeners(Class listenerType)
AbstractTableModel
上で FooListener
として現在登録されている、すべてのオブジェクトからなる配列を返します。FooListener
の登録には、addFooListener
メソッドが使用されます。
FooListener.class
などのクラスリテラルを使用して、listenerType
引数を指定できます。たとえば以下のコードを使用して、モデル m
を、そのテーブルモデルリスナーに照会できます。
TableModelListener[] tmls = (TableModelListener[])(m.getListeners(TableModelListener.class));この種のリスナーが存在しない場合、このメソッドでは空の配列が返されます。
listenerType
- 要求されるリスナーのタイプ。このパラメータは java.util.EventListener
から派生するインタフェースを指定する
FooListener
として登録されたすべてのオブジェクトからなる配列。この種のリスナーが追加されていない場合は、空の配列
ClassCastException
- listenerType
で java.util.EventListener
を実装するクラスやインタフェースを指定しない場合getTableModelListeners()
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.