JavaTM 2 Platform
Standard Ed. 6

javax.swing.event
類別 TableModelEvent

java.lang.Object
  繼承者 java.util.EventObject
      繼承者 javax.swing.event.TableModelEvent
所有已實作的介面:
Serializable

public class TableModelEvent
extends EventObject

TableModelEvent 用於通知偵聽器某一表模型已發生更改。模型事件描述 TableModel 的更改,並且對行和列的所有參考都在該模型的坐標系統中。可以根據建構子中使用的參數,用 TableModelevent 指定以下更改型別:

 TableModelEvent(source);              //  The data, ie. all rows changed 
 TableModelEvent(source, HEADER_ROW);  //  Structure change, reallocate 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
 
可以使用其他參陣列合,但並不是所有的參數都有意義。通過創建子類別,可以添加其他任何資訊,例如:事件“將要”發生,還是“確實已經”發生。這使得 DELETE 事件中的行的指定更有用,但這並沒有包含在 swing 套件中,因為 JTable 只需要發送事件的通知。

警告:此類別的序列化物件將與以後的 Swing 版本不相容。當前的序列化支持適用於短期存儲或運行相同 Swing 版本的應用程序之間的 RMI。從 1.4 版本開始,已在 java.beans 套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder

另請參見:
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)
          如果表中的所有行資料都發生更改,那麼偵聽器應該丟棄基於這些行的所有狀態,並重新查詢 TableModel 來獲得新的行計數和所有恰當值。
TableModelEvent(TableModel source, int row)
          此資料行已被更新。
TableModelEvent(TableModel source, int firstRow, int lastRow)
          行 [firstRow, lastRow] 中的資料已被更新。
TableModelEvent(TableModel source, int firstRow, int lastRow, int column)
          列 column 的 [firstRow, lastRow] 範圍內的單元格已被更新。
TableModelEvent(TableModel source, int firstRow, int lastRow, int column, int type)
          從 (firstRow, column) 到 (lastRow, column) 的單元格已被更改。
 
方法摘要
 int getColumn()
          返回事件的列。
 int getFirstRow()
          返回第一個被更改的行。
 int getLastRow()
          返回最後一個被更改的行。
 int getType()
          返回事件型別,該型別為以下型別之一:INSERT、UPDATE 和 DELETE。
 
從類別 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)
此資料行已被更新。為了表示具有不同結構的整個新表都已到達,可使用 HEADER_ROW 作為 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)
column 的 [firstRow, lastRow] 範圍內的單元格已被更新。


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
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only