モジュール java.desktop
パッケージ javax.swing.table

クラスAbstractTableModel

java.lang.Object
javax.swing.table.AbstractTableModel
すべての実装されたインタフェース:
Serializable, TableModel
直系の既知のサブクラス:
DefaultTableModel

public abstract class AbstractTableModel extends Object implements TableModel, Serializable
このabstractクラスは、TableModelインタフェースのほとんどのメソッドのデフォルトの実装を提供します。 このクラスはリスナーを管理するほか、TableModelEventsを生成し、それらをリスナーにディスパッチするための機能を提供します。 具象TableModelAbstractTableModelのサブクラスとして作成するには、次の3つのメソッドの実装を提供してください。
  public int getRowCount();
  public int getColumnCount();
  public Object getValueAt(int row, int column);
  

警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。

  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    リスナーのリストです。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    サブクラスが呼び出すためのコンストラクタ。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    データ・モデル変更時の通知対象リストにリスナーを追加します。
    int
    findColumn(String columnName)
    指定された名前の列を返します。
    void
    fireTableCellUpdated(int row, int column)
    [row, column]にあるセルの値が更新されたことを、すべてのリスナーに通知します。
    void
    このテーブル・モデルのリスナーとして登録されているすべてのTableModelListenersに、指定された通知イベントを転送します。
    void
    テーブルの行のすべてのセル値が変更されている可能性があることを、すべてのリスナーに通知します。
    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
    テーブルの構造が変更されたことをすべてのリスナーに通知します。
    getColumnClass(int columnIndex)
    columnIndexにかかわらずObject.classを返します。
    getColumnName(int column)
    スプレッドシートの規約を使って、列のデフォルト名(A、B、C、...)を返します。
    <T extends EventListener>
    T[]
    getListeners(Class<T> listenerType)
    このAbstractTableModelFooListenerとして現在登録されているすべてのオブジェクトの配列を返します。
    このモデルに登録された、すべてのテーブル・モデル・リスナーから成る配列を返します。
    boolean
    isCellEditable(int rowIndex, int columnIndex)
    falseを返します。
    void
    データ・モデル変更時の通知対象リストからリスナーを削除します。
    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
  • フィールド詳細

    • listenerList

      protected EventListenerList listenerList
      リスナーのリストです。
  • コンストラクタの詳細

    • AbstractTableModel

      protected AbstractTableModel()
      サブクラスが呼び出すためのコンストラクタ。
  • メソッドの詳細

    • getColumnName

      public String getColumnName(int column)
      スプレッドシートの規約を使って、列のデフォルト名(A、B、C、... Z、AA、ABなど)を返します。columnが見つからない場合は、空の文字列を返します。
      定義:
      getColumnName、インタフェースTableModel
      パラメータ:
      column - 照会される列
      戻り値:
      columnのデフォルト名が格納されている文字列
    • findColumn

      public int findColumn(String columnName)
      指定された名前の列を返します。 実装がネイティブなので、このメソッドを頻繁に呼び出す場合にはオーバーライドする必要があります。 このメソッドは、TableModelインタフェースにはなく、JTableはこれを使用しません。
      パラメータ:
      columnName - 配置される列の名前を格納する文字列
      戻り値:
      columnNameを持つ列。列が見つからない場合は -1
    • getColumnClass

      public Class<?> getColumnClass(int columnIndex)
      columnIndexにかかわらずObject.classを返します。
      定義:
      getColumnClass、インタフェースTableModel
      パラメータ:
      columnIndex - 照会される列
      戻り値:
      Object.class
    • isCellEditable

      public boolean isCellEditable(int rowIndex, int columnIndex)
      falseを返します。 これは、すべてのセルのデフォルトの実装です。
      定義:
      isCellEditable、インタフェースTableModel
      パラメータ:
      rowIndex - 照会される行
      columnIndex - 照会される列
      戻り値:
      false
      関連項目:
    • setValueAt

      public void setValueAt(Object aValue, int rowIndex, int columnIndex)
      空の実装が提供されるので、データ・モデルが編集不可の場合、ユーザーはこのメソッドを実装する必要はありません。
      定義:
      setValueAt、インタフェースTableModel
      パラメータ:
      aValue - セルに割り当てる値
      rowIndex - セルの行
      columnIndex - セルの列
      関連項目:
    • addTableModelListener

      public void addTableModelListener(TableModelListener l)
      データ・モデル変更時の通知対象リストにリスナーを追加します。
      定義:
      addTableModelListener、インタフェースTableModel
      パラメータ:
      l - TableModelListener
    • removeTableModelListener

      public void removeTableModelListener(TableModelListener l)
      データ・モデル変更時の通知対象リストからリスナーを削除します。
      定義:
      removeTableModelListener、インタフェースTableModel
      パラメータ:
      l - TableModelListener
    • getTableModelListeners

      public TableModelListener[] getTableModelListeners()
      このモデルに登録された、すべてのテーブル・モデル・リスナーから成る配列を返します。
      戻り値:
      このモデルのTableModelListener全部。テーブル・モデル・リスナーが現在登録されていない場合は空の配列
      導入されたバージョン:
      1.4
      関連項目:
    • fireTableDataChanged

      public void fireTableDataChanged()
      テーブルの行のすべてのセル値が変更されている可能性があることを、すべてのリスナーに通知します。 行数も変更されている場合があり、JTableはテーブルの描画を最初からやり直す必要があります。 列の順序としてのテーブルの構造は同じと見なされます。
      関連項目:
    • fireTableStructureChanged

      public void fireTableStructureChanged()
      テーブルの構造が変更されたことをすべてのリスナーに通知します。 テーブルの列数、および新しい列の名前と型が、以前の状態と異なっている可能性があります。 JTableは、このイベントを受け取り、autoCreateColumnsFromModelフラグが設定されている場合、JTableはそれまで保持していたテーブルの列をすべて破棄し、モデルでの順序に従ってデフォルトの列をふたたび割り当てます。 これは、JTablesetModel(TableModel)を呼び出すのと同じです。
      関連項目:
    • fireTableRowsInserted

      public void fireTableRowsInserted(int firstRow, int lastRow)
      [firstRow, lastRow] (これを含む)の範囲で行が挿入されたことを、すべてのリスナーに通知します。
      パラメータ:
      firstRow - 最初の行
      lastRow - 最後の行
      関連項目:
    • fireTableRowsUpdated

      public void fireTableRowsUpdated(int firstRow, int lastRow)
      [firstRow, lastRow] (これを含む)の範囲で行が更新されたことを、すべてのリスナーに通知します。
      パラメータ:
      firstRow - 最初の行
      lastRow - 最後の行
      関連項目:
    • fireTableRowsDeleted

      public void fireTableRowsDeleted(int firstRow, int lastRow)
      [firstRow, lastRow] (これを含む)の範囲で行が削除されたことを、すべてのリスナーに通知します。
      パラメータ:
      firstRow - 最初の行
      lastRow - 最後の行
      関連項目:
    • fireTableCellUpdated

      public void fireTableCellUpdated(int row, int column)
      [row, column]にあるセルの値が更新されたことを、すべてのリスナーに通知します。
      パラメータ:
      row - 更新されたセルの行
      column - 更新されたセルの列
      関連項目:
    • fireTableChanged

      public void fireTableChanged(TableModelEvent e)
      このテーブル・モデルのリスナーとして登録されているすべてのTableModelListenersに、指定された通知イベントを転送します。
      パラメータ:
      e - 転送されるイベント
      関連項目:
    • getListeners

      public <T extends EventListener> T[] getListeners(Class<T> listenerType)
      このAbstractTableModelFooListenerとして現在登録されているすべてのオブジェクトの配列を返します。 FooListenerは、addFooListenerメソッドを使用して登録されます。

      FooListener.classなどのクラス・リテラルを使用してlistenerType引数を指定できます。 たとえば次のコードを使用して、モデルmを、そのテーブル・モデル・リスナーに照会できます。

      TableModelListener[] tmls = (TableModelListener[])(m.getListeners(TableModelListener.class));
      このようなリスナーがない場合は空の配列を返します。

      型パラメータ:
      T - リスナー型
      パラメータ:
      listenerType - リクエストされたリスナーの型
      戻り値:
      このコンポーネント上でFooListenerとして登録されたすべてのオブジェクトの配列、またはこのようなリスナーが追加されていない場合は空の配列
      例外:
      ClassCastException - listenerTypeで、java.util.EventListenerを実装するクラスまたはインタフェースが指定されなかった場合
      導入されたバージョン:
      1.3
      関連項目: