|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.swing.table.DefaultTableColumnModel
public class DefaultTableColumnModel
JTable
的標準列處理程序。
警告:此類別的已序列化物件與以後的 Swing 版本不相容。當前的序列化支持適用於短期存儲或運行相同 Swing 版本的應用程序之間的 RMI。從 1.4 版本開始,已在 java.beans
套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder
。
JTable
欄位摘要 | |
---|---|
protected ChangeEvent |
changeEvent
更改事件(只需要一個) |
protected int |
columnMargin
每列之間的空白寬度 |
protected boolean |
columnSelectionAllowed
此列模型中允許的列選擇 |
protected EventListenerList |
listenerList
TableColumnModelListener 的列表 |
protected ListSelectionModel |
selectionModel
追蹤列選擇的模型 |
protected Vector<TableColumn> |
tableColumns
此模型中 TableColumn 物件組成的陣列 |
protected int |
totalColumnWidth
所有列總寬度的本地快取記憶體 |
建構子摘要 | |
---|---|
DefaultTableColumnModel()
創建預設的表列模型。 |
方法摘要 | ||
---|---|---|
void |
addColumn(TableColumn aColumn)
將 aColumn 追加到 tableColumns 陣列的結尾。 |
|
void |
addColumnModelListener(TableColumnModelListener x)
添加表列模型事件的偵聽器。 |
|
protected ListSelectionModel |
createSelectionModel()
創建新的預設列表選擇模型。 |
|
protected void |
fireColumnAdded(TableColumnModelEvent e)
通知所有對此事件型別的通知感興趣的已註冊偵聽器。 |
|
protected void |
fireColumnMarginChanged()
通知所有對此事件型別的通知感興趣的已註冊偵聽器。 |
|
protected void |
fireColumnMoved(TableColumnModelEvent e)
通知所有對此事件型別的通知感興趣的已註冊偵聽器。 |
|
protected void |
fireColumnRemoved(TableColumnModelEvent e)
通知所有對此事件型別的通知感興趣的已註冊偵聽器。 |
|
protected void |
fireColumnSelectionChanged(ListSelectionEvent e)
通知所有對此事件型別的通知感興趣的已註冊偵聽器。 |
|
TableColumn |
getColumn(int columnIndex)
返回 columnIndex 處列的 TableColumn 物件。 |
|
int |
getColumnCount()
返回 tableColumns 陣列中的列數。 |
|
int |
getColumnIndex(Object identifier)
返回 tableColumns 陣列中第一列的索引,當使用 equals 進行比較時,該列的標識符等於 identifier 。 |
|
int |
getColumnIndexAtX(int x)
返回位於 x 處列的索引,如果該點處沒有列,則返回 -1。 |
|
int |
getColumnMargin()
返回 TableColumn 的空白寬度。 |
|
TableColumnModelListener[] |
getColumnModelListeners()
返回一個套件含在此模型上註冊的所有列模型偵聽器的陣列。 |
|
Enumeration<TableColumn> |
getColumns()
返回該模型中所有列的一個 Enumeration 。 |
|
boolean |
getColumnSelectionAllowed()
如果允許列選擇,則返回 true,否則返回 false。 |
|
|
getListeners(Class<T> listenerType)
返回當前已在此模型上註冊為 FooListener 的所有物件組成的陣列。 |
|
int |
getSelectedColumnCount()
返回選定的列數。 |
|
int[] |
getSelectedColumns()
返回包含選定列的陣列。 |
|
ListSelectionModel |
getSelectionModel()
返回用來維護列選擇狀態的 ListSelectionModel 。 |
|
int |
getTotalColumnWidth()
返回所有列的總寬度。 |
|
void |
moveColumn(int columnIndex,
int newIndex)
將 columnIndex 位置的列和標題移到 newIndex 。 |
|
void |
propertyChange(PropertyChangeEvent evt)
Property Change Listener 更改方法。 |
|
protected void |
recalcWidthCache()
重新計算所有列的總寬度。 |
|
void |
removeColumn(TableColumn column)
從 tableColumns 陣列刪除 column 。 |
|
void |
removeColumnModelListener(TableColumnModelListener x)
移除表列模型事件的偵聽器。 |
|
void |
setColumnMargin(int newMargin)
將列空白設置為 newMargin 。 |
|
void |
setColumnSelectionAllowed(boolean flag)
設置是否允許列選擇。 |
|
void |
setSelectionModel(ListSelectionModel newModel)
將此 TableColumnModel 的選擇模型設置為 newModel ,並為來自新選擇模型的偵聽器通知註冊它。 |
|
void |
valueChanged(ListSelectionEvent e)
列選擇更改時轉發 ListSelectionEvents 的 ListSelectionListener 。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
欄位詳細資訊 |
---|
protected Vector<TableColumn> tableColumns
protected ListSelectionModel selectionModel
protected int columnMargin
protected EventListenerList listenerList
protected transient ChangeEvent changeEvent
protected boolean columnSelectionAllowed
protected int totalColumnWidth
建構子詳細資訊 |
---|
public DefaultTableColumnModel()
方法詳細資訊 |
---|
public void addColumn(TableColumn aColumn)
aColumn
追加到 tableColumns
陣列的結尾。此方法還將 columnAdded
事件發送到它的偵聽器。
TableColumnModel
中的 addColumn
aColumn
- 要添加的 TableColumn
IllegalArgumentException
- 如果 aColumn
為 null
removeColumn(javax.swing.table.TableColumn)
public void removeColumn(TableColumn column)
tableColumns
陣列刪除 column
。如果 column
不在該表各列的列表中,則此方法不執行任何操作。此方法調用 tile
重新調整標題和表視圖的大小。此方法還將 columnRemoved
事件發送到它的偵聽器。
TableColumnModel
中的 removeColumn
column
- 要移除的 TableColumn
addColumn(javax.swing.table.TableColumn)
public void moveColumn(int columnIndex, int newIndex)
columnIndex
位置的列和標題移到 newIndex
。原來在 columnIndex
位置的列現在可以在 newIndex
處找到。newIndex
位置上的原有列向左或右移動以留出空間。如果 columnIndex
等於 newIndex
,則此操作不移動任何列。此方法還將 columnMoved
事件發送到它的偵聽器。
TableColumnModel
中的 moveColumn
columnIndex
- 要移動列的索引newIndex
- 將列移動到該新索引位置
IllegalArgumentException
- 如果 column
或 newIndex
不在有效範圍內public void setColumnMargin(int newMargin)
newMargin
。此方法還將 columnMarginChanged
事件發送到它的偵聽器。
TableColumnModel
中的 setColumnMargin
newMargin
- 新的空白寬度,以像素為單位getColumnMargin()
,
getTotalColumnWidth()
public int getColumnCount()
tableColumns
陣列中的列數。
TableColumnModel
中的 getColumnCount
tableColumns
陣列中的列數getColumns()
public Enumeration<TableColumn> getColumns()
Enumeration
。
TableColumnModel
中的 getColumns
Enumeration
public int getColumnIndex(Object identifier)
tableColumns
陣列中第一列的索引,當使用 equals
進行比較時,該列的標識符等於 identifier
。
TableColumnModel
中的 getColumnIndex
identifier
- 標識符物件
tableColumns
陣列中第一列的索引,該列的標識符等於 identifier
IllegalArgumentException
- 如果 identifier
為 null
,或者沒有 TableColumn
具有此 identifier
getColumn(int)
public TableColumn getColumn(int columnIndex)
columnIndex
處列的 TableColumn
物件。
TableColumnModel
中的 getColumn
columnIndex
- 所需列的索引
columnIndex
處列的 TableColumn
物件public int getColumnMargin()
TableColumn
的空白寬度。預設的 columnMargin
為 1。
TableColumnModel
中的 getColumnMargin
TableColumn
的最大寬度setColumnMargin(int)
public int getColumnIndexAtX(int x)
x
處列的索引,如果該點處沒有列,則返回 -1。
為了與 Swing 的可分離模型架構保持一致,TableColumnModel 不知道表的各列是如何實際顯示在螢幕上的。各列的可視化表示由使用此模型的視圖/控制器(通常是 JTable)來負責。該視圖/控制器無需從左到右按順序顯示各列。例如,為了適應語言環境的優先選擇,可以從右到左顯示各列,或者可能根據使用者的請求隱藏某些列。因為模型不知道各列是如何在螢幕上佈局的,所以不應將給定的 xPosition
認為是 2D 圖形空間中的坐標。相反,應該將其認為是從模型中首列開始的一個寬度。如果需要 2D 空間中給定 X 坐標的列索引,則可以使用 JTable.columnAtPoint
。
TableColumnModel
中的 getColumnIndexAtX
x
- 需要的水平位置
JTable.columnAtPoint(java.awt.Point)
public int getTotalColumnWidth()
TableColumnModel
中的 getTotalColumnWidth
totalColumnWidth
屬性public void setSelectionModel(ListSelectionModel newModel)
TableColumnModel
的選擇模型設置為 newModel
,並為來自新選擇模型的偵聽器通知註冊它。如果 newModel
為 null
,則拋出一個異常。
TableColumnModel
中的 setSelectionModel
newModel
- 新的選擇模型
IllegalArgumentException
- 如果 newModel
為 null
getSelectionModel()
public ListSelectionModel getSelectionModel()
ListSelectionModel
。
TableColumnModel
中的 getSelectionModel
null
。setSelectionModel(javax.swing.ListSelectionModel)
public void setColumnSelectionAllowed(boolean flag)
TableColumnModel
中的 setColumnSelectionAllowed
flag
- 如果允許列選擇,則為 true,否則為 falseTableColumnModel.getColumnSelectionAllowed()
public boolean getColumnSelectionAllowed()
TableColumnModel
中的 getColumnSelectionAllowed
columnSelectionAllowed
屬性TableColumnModel.setColumnSelectionAllowed(boolean)
public int[] getSelectedColumns()
selectionModel
為 null
,則返回一個空陣列。
TableColumnModel
中的 getSelectedColumns
selectionModel
為 null
,則返回一個空陣列public int getSelectedColumnCount()
TableColumnModel
中的 getSelectedColumnCount
public void addColumnModelListener(TableColumnModelListener x)
TableColumnModel
中的 addColumnModelListener
x
- 一個 TableColumnModelListener
物件public void removeColumnModelListener(TableColumnModelListener x)
TableColumnModel
中的 removeColumnModelListener
x
- 一個 TableColumnModelListener
物件public TableColumnModelListener[] getColumnModelListeners()
ColumnModelListener
,如果當前沒有已註冊的列模型偵聽器,則返回一個空陣列addColumnModelListener(javax.swing.event.TableColumnModelListener)
,
removeColumnModelListener(javax.swing.event.TableColumnModelListener)
protected void fireColumnAdded(TableColumnModelEvent e)
e
- 接收的事件EventListenerList
protected void fireColumnRemoved(TableColumnModelEvent e)
e
- 接收的事件EventListenerList
protected void fireColumnMoved(TableColumnModelEvent e)
e
- 接收的事件EventListenerList
protected void fireColumnSelectionChanged(ListSelectionEvent e)
e
- 接收的事件EventListenerList
protected void fireColumnMarginChanged()
EventListenerList
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
FooListener
的所有物件組成的陣列。FooListener
是用 addFooListener
方法註冊的。
可以使用 class 文字值(如 FooListener.class
)來指定 listenerType
參數。例如,可以使用以下程式碼查詢 DefaultTableColumnModel
m
的列模型偵聽器:
ColumnModelListener[] cmls = (ColumnModelListener[])(m.getListeners(ColumnModelListener.class));如果不存在這樣的偵聽器,則此方法將返回一個空陣列。
listenerType
- 請求的偵聽器型別;此參數應該指定一個從 java.util.EventListener
繼承的介面
FooListener
的所有物件組成的陣列,如果沒有添加這樣的偵聽器,則返回一個空陣列
ClassCastException
- 如果 listenerType
未指定實作 java.util.EventListener
的類別或介面。getColumnModelListeners()
public void propertyChange(PropertyChangeEvent evt)
PropertyChangeListener
中的 propertyChange
evt
- PropertyChangeEvent
public void valueChanged(ListSelectionEvent e)
ListSelectionEvents
的 ListSelectionListener
。
ListSelectionListener
中的 valueChanged
e
- 更改事件protected ListSelectionModel createSelectionModel()
protected void recalcWidthCache()
totalColumnWidth
屬性。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。