public abstract class AbstractTableModel extends Object implements TableModel, Serializable
TableModelインタフェースのほとんどのメソッドのデフォルトの実装を提供します。 このクラスはリスナーを管理するほか、TableModelEventsを生成し、それらをリスナーにディスパッチするための機能を提供します。 具象TableModelをAbstractTableModelのサブクラスとして作成するには、次の3つのメソッドの実装を提供してください。
public int getRowCount(); public int getColumnCount(); public Object getValueAt(int row, int column);
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースとの互換性がなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4以降、すべてのJavaBeans™用の長期間の格納サポートが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、...)を返します。
|
<T extends EventListener> |
getListeners(Class<T> listenerType) |
この
AbstractTableModelにFooListenerとして現在登録されているすべてのオブジェクトの配列を返します。 |
TableModelListener[] |
getTableModelListeners() |
このモデルに登録された、すべてのテーブル・モデル・リスナーから成る配列を返します。
|
boolean |
isCellEditable(int rowIndex, int columnIndex) |
falseを返します。
|
void |
removeTableModelListener(TableModelListener l) |
データ・モデル変更時の通知対象リストからリスナーを削除します。
|
void |
setValueAt(Object aValue, int rowIndex, int columnIndex) |
空の実装が提供されるので、データ・モデルが編集不可の場合、ユーザーはこのメソッドを実装する必要はありません。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetColumnCount, getRowCount, getValueAtprotected EventListenerList listenerList
public String getColumnName(int column)
columnが見つからない場合は、空の文字列を返します。getColumnName、インタフェースTableModelcolumn - 照会される列columnのデフォルト名が格納されている文字列public int findColumn(String columnName)
TableModelインタフェースにはなく、JTableはこれを使用しません。 columnName - 配置される列の名前を格納する文字列columnNameを持つ列。列が見つからない場合は -1public Class<?> getColumnClass(int columnIndex)
columnIndexにかかわらずObject.classを返します。getColumnClass、インタフェースTableModelcolumnIndex - 照会される列public boolean isCellEditable(int rowIndex,
int columnIndex)
isCellEditable、インタフェースTableModelrowIndex - 照会される行columnIndex - 照会される列TableModel.setValueAt(java.lang.Object, int, int)public void setValueAt(Object aValue, int rowIndex, int columnIndex)
setValueAt、インタフェースTableModelaValue - セルに割り当てる値rowIndex - セルの行columnIndex - セルの列TableModel.getValueAt(int, int), TableModel.isCellEditable(int, int)public void addTableModelListener(TableModelListener l)
addTableModelListener、インタフェースTableModell - TableModelListenerpublic void removeTableModelListener(TableModelListener l)
removeTableModelListener、インタフェースTableModell - TableModelListenerpublic TableModelListener[] getTableModelListeners()
TableModelListener全部。テーブル・モデル・リスナーが現在登録されていない場合は空の配列addTableModelListener(javax.swing.event.TableModelListener), removeTableModelListener(javax.swing.event.TableModelListener)public void fireTableDataChanged()
JTableはテーブルの描画を最初からやり直す必要があります。 列の順序としてのテーブルの構造は同じと見なされます。 public void fireTableStructureChanged()
JTableは、このイベントを受け取り、autoCreateColumnsFromModelフラグが設定されている場合、JTableはそれまで保持していたテーブルの列をすべて破棄し、モデルでの順序に従ってデフォルトの列をふたたび割り当てます。 これは、JTableでsetModel(TableModel)を呼び出すのと同じです。 TableModelEvent, EventListenerListpublic void fireTableRowsInserted(int firstRow,
int lastRow)
[firstRow, lastRow] (これを含む)の範囲で行が挿入されたことを、すべてのリスナーに通知します。firstRow - 最初の行lastRow - 最後の行TableModelEvent, EventListenerListpublic void fireTableRowsUpdated(int firstRow,
int lastRow)
[firstRow, lastRow] (これを含む)の範囲で行が更新されたことを、すべてのリスナーに通知します。firstRow - 最初の行lastRow - 最後の行TableModelEvent, EventListenerListpublic void fireTableRowsDeleted(int firstRow,
int lastRow)
[firstRow, lastRow] (これを含む)の範囲で行が削除されたことを、すべてのリスナーに通知します。firstRow - 最初の行lastRow - 最後の行TableModelEvent, EventListenerListpublic void fireTableCellUpdated(int row,
int column)
[row, column]にあるセルの値が更新されたことを、すべてのリスナーに通知します。row - 更新されたセルの行column - 更新されたセルの列TableModelEvent, EventListenerListpublic void fireTableChanged(TableModelEvent e)
TableModelListenersに、指定された通知イベントを転送します。e - 転送されるイベントaddTableModelListener(javax.swing.event.TableModelListener), TableModelEvent, EventListenerListpublic <T extends EventListener> T[] getListeners(Class<T> 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() バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。