JavaTM 2 Platform
Std. Ed. v1.3

javax.swing.event
クラス TableModelEvent

java.lang.Object
  |
  +--java.util.EventObject
        |
        +--javax.swing.event.TableModelEvent
すべての実装インタフェース:
Serializable

public class TableModelEvent
extends EventObject

テーブルモデルが変更されたことをリスナーに通知するために使用します。モデルイベントは TableModel の変更を記述し、行および列への参照はすべてモデルの座標体系内にあります。コンストラクタで使用されるパラメータによっては、TableModelevent を使用して、以下の種類の変更を指定できます。

 TableModelEvent(source);              //  The data, ie. all rows changed 
 TableModelEvent(source, HEADER_ROW);  //  Structure change, reallcoate TableColumns
 TableModelEvent(source, 1);           //  Row 1 changed
 TableModelEvent(source, 3, 6);        //  Rows 3 to 6 inclusive changed
 TableModelEvent(source, 2, 2, 6);     //  Cell at (2, 6) changed
 TableModelEvent(source, 3, 6, ALL_COLUMNS, INSERT); // Rows (3, 6) were inserted
 TableModelEvent(source, 3, 6, ALL_COLUMNS, DELETE); // Rows (3, 6) were deleted
 
他のパラメータの組み合わせを使用することもできますが、すべてが有用であるとは限りません。サブクラス化することにより、たとえば、イベント WILL が発生したか、イベント DID が発生したかなど、他の情報を追加することもできます。これにより、DELETE イベントでの行の指定がしやすくなりますが、JTable ではイベント後の通知だけが必要なので、Swing パッケージには含まれていません。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。

関連項目:
TableModel, 直列化された形式

フィールドの概要
static int ALL_COLUMNS
          ある行または複数の行のすべての列を識別します。
protected  int column
           
static int DELETE
          行または列の削除を識別します。
protected  int firstRow
           
static int HEADER_ROW
          ヘッダ行を識別します。
static int INSERT
          新しい行または列の追加を識別します。
protected  int lastRow
           
protected  int type
           
static int UPDATE
          既存のデータに対する変更を識別します。
 
クラス java.util.EventObject から継承したフィールド
source
 
コンストラクタの概要
TableModelEvent(TableModel source)
          テーブル内のすべての行データが変更されています。
TableModelEvent(TableModel source, int row)
          このデータの行は更新されています。
TableModelEvent(TableModel source, int firstRow, int lastRow)
          行 [firstRow, lastRow] のデータが更新されています。
TableModelEvent(TableModel source, int firstRow, int lastRow, int column)
          [firstRow, lastRow] の範囲の列 column のセルが更新されています。
TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type)
          (firstRow, column) から (lastRow, column) までのセルが変更されています。
 
メソッドの概要
 int getColumn()
          イベントの列を返します。
 int getFirstRow()
          変更された最初の行を返します。
 int getLastRow()
          変更された最後の行を返します。
 int getType()
          イベントのタイプを返します。
 
クラス java.util.EventObject から継承したメソッド
getSource, toString
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

INSERT

public static final int INSERT
新しい行または列の追加を識別します。

UPDATE

public static final int UPDATE
既存のデータに対する変更を識別します。

DELETE

public static final int DELETE
行または列の削除を識別します。

HEADER_ROW

public static final int HEADER_ROW
ヘッダ行を識別します。

ALL_COLUMNS

public static final int ALL_COLUMNS
ある行または複数の行のすべての列を識別します。

type

protected int type

firstRow

protected int firstRow

lastRow

protected int lastRow

column

protected int column
コンストラクタの詳細

TableModelEvent

public TableModelEvent(TableModel source)
テーブル内のすべての行データが変更されています。リスナーは、行をベースにしたすべての状態を破棄し、TableModel に問い合わせし直して新しい行数とすべての適切な値を取得します。JTable は、このイベントを受け取ると可視領域全体を描画し直し、可視のセルの値をモデルに問い合わせます。列名、型、および順序など、テーブルの構造は変更されません。

TableModelEvent

public TableModelEvent(TableModel source,
                       int row)
このデータの行は更新されています。構造が異なる完全に新しいテーブルの出現を示すには、row の値として HEADER_ROW を使用します。JTable は、このイベントを受け取り、autoCreateColumnsFromModel フラグがセットされると、TableColumn があればすべて破棄し、モデルで表示される順番でデフォルトの列を割り当てし直します。これは、JTable で setModel(TableModel) を呼び出すのと同じです。

TableModelEvent

public TableModelEvent(TableModel source,
                       int firstRow,
                       int lastRow)
行 [firstRow, lastRow] のデータが更新されています。

TableModelEvent

public TableModelEvent(TableModel source,
                       int firstRow,
                       int lastRow,
                       int column)
[firstRow, lastRow] の範囲の列 column のセルが更新されています。

TableModelEvent

public TableModelEvent(TableModel source,
                       int firstRow,
                       int lastRow,
                       int column,
                       int type)
(firstRow, column) から (lastRow, column) までのセルが変更されています。column は、モデルの座標体系でのセルの列インデックスを参照します。column が ALL_COLUMNS の場合は、指定した行範囲内のすべてのセルが変更されたと見なされます。

type は INSERT、UPDATE、および DELETE のどれかである必要があります。

メソッドの詳細

getFirstRow

public int getFirstRow()
変更された最初の行を返します。HEADER_ROW は、列の名前、型、および順序などのメタデータを意味します。

getLastRow

public int getLastRow()
変更された最後の行を返します。

getColumn

public int getColumn()
イベントの列を返します。戻り値が ALL_COLUMNS の場合は、指定された行内のすべての列が変更されたことを意味します。

getType

public int getType()
イベントのタイプを返します。INSERT、UPDATE、および DELETE のどれかです。

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.