JavaTM Platform
Standard Ed. 6

javax.swing.table
接口 TableColumnModel

所有已知实现类:
DefaultTableColumnModel

public interface TableColumnModel

定义了适合用于 JTable 的表列模型对象的要求。

另请参见:
DefaultTableColumnModel

方法摘要
 void addColumn(TableColumn aColumn)
          将 aColumn 追加到 tableColumns 数组的结尾。
 void addColumnModelListener(TableColumnModelListener x)
          为表列模型事件添加侦听器。
 TableColumn getColumn(int columnIndex)
          返回 columnIndex 位置列的 TableColumn 对象。
 int getColumnCount()
          返回该模型中的列数。
 int getColumnIndex(Object columnIdentifier)
          返回该表中首列的索引,使用 equals 进行比较时,该列的标识符等于 identifier
 int getColumnIndexAtX(int xPosition)
          返回位于该水平点 xPosition 位置列的索引;如果该点位于任何列边界外,则返回 -1。
 int getColumnMargin()
          返回每列中单元格之间的宽度。
 Enumeration<TableColumn> getColumns()
          返回该模型中所有列的 Enumeration
 boolean getColumnSelectionAllowed()
          如果可以选择列,则返回 true。
 int getSelectedColumnCount()
          返回选定的列数。
 int[] getSelectedColumns()
          返回所有选定列的索引数组。
 ListSelectionModel getSelectionModel()
          返回当前的选择模型。
 int getTotalColumnWidth()
          返回所有列的总宽度。
 void moveColumn(int columnIndex, int newIndex)
          将 columnIndex 位置的列及其头移至 newIndex
 void removeColumn(TableColumn column)
          从 tableColumns 数组中删除 TableColumn column
 void removeColumnModelListener(TableColumnModelListener x)
          移除表列模型事件的侦听器。
 void setColumnMargin(int newMargin)
          将 TableColumn 的列空白设置为 newMargin
 void setColumnSelectionAllowed(boolean flag)
          设置是否可以选择此模型中的列。
 void setSelectionModel(ListSelectionModel newModel)
          设置选择模型。
 

方法详细信息

addColumn

void addColumn(TableColumn aColumn)
aColumn 追加到 tableColumns 数组的结尾。此方法向其侦听器发送一个 columnAdded 事件。

参数:
aColumn - 要添加的 TableColumn
另请参见:
removeColumn(javax.swing.table.TableColumn)

removeColumn

void removeColumn(TableColumn column)
tableColumns 数组中删除 TableColumn column。如果 column 不处于该表各列的列表中,则此方法不执行任何操作。此方法向其侦听器发送一个 columnRemoved 事件。

参数:
column - 要移除的 TableColumn
另请参见:
addColumn(javax.swing.table.TableColumn)

moveColumn

void moveColumn(int columnIndex,
                int newIndex)
columnIndex 位置的列及其头移至 newIndex。原位于 columnIndex 位置的列现在将在 newIndex 处找到。将原位于 newIndex 位置的列向左或向右移动以留出空间。如果 columnIndex 等于 newIndex,则不移动任何列。此方法向其侦听器发送一个 columnMoved 事件。

参数:
columnIndex - 要移动的列的索引
newIndex - 该列新位置的索引
抛出:
IllegalArgumentException - 如果 columnIndexnewIndex 不在有效范围内

setColumnMargin

void setColumnMargin(int newMargin)
TableColumn 的列空白设置为 newMargin。此方法向其侦听器发送一个 columnMarginChanged 事件。

参数:
newMargin - 新列空白的宽度,以像素为单位
另请参见:
getColumnMargin()

getColumnCount

int getColumnCount()
返回该模型中的列数。

返回:
该模型中的列数

getColumns

Enumeration<TableColumn> getColumns()
返回该模型中所有列的 Enumeration

返回:
该模型中所有列的 Enumeration

getColumnIndex

int getColumnIndex(Object columnIdentifier)
返回该表中首列的索引,使用 equals 进行比较时,该列的标识符等于 identifier

参数:
columnIdentifier - 标识符对象
返回:
首个表列的索引,其标识符等于 identifier
抛出:
IllegalArgumentException - 如果 identifiernull,或者没有 TableColumn 具有此 identifier
另请参见:
getColumn(int)

getColumn

TableColumn getColumn(int columnIndex)
返回 columnIndex 位置列的 TableColumn 对象。

参数:
columnIndex - 所需列的索引
返回:
columnIndex 位置列的 TableColumn 对象

getColumnMargin

int getColumnMargin()
返回每列中单元格之间的宽度。

返回:
单元格之间的空白,以像素为单位

getColumnIndexAtX

int getColumnIndexAtX(int xPosition)
返回位于该水平点 xPosition 位置列的索引;如果该点位于任何列边界外,则返回 -1。 在维护 Swing 的可分离模型架构的过程中,TableColumnModel 并不了解表的各列实际出现在屏幕上的方式。列的虚拟展示由使用此模型(通常是 JTable)的 view/controller 对象负责。view/controller 不必从左到右按顺序显示这些列。例如,为了适应语言环境的优先选择,可以从右到左显示各列,或者可能根据用户的请求隐藏某些列。因为该模型不了解各列在屏幕上的排列方式,所以不应将给定的 xPosition 考虑为 2D 图形空间中的坐标。相反,应将其考虑为从模型中第一列开始的宽度。如果要求 2D 空间中给定 X 坐标的列索引,则可以使用 JTable.columnAtPoint

返回:
列的索引;如果无法找到列,则返回 -1
另请参见:
JTable.columnAtPoint(java.awt.Point)

getTotalColumnWidth

int getTotalColumnWidth()
返回所有列的总宽度。

返回:
计算出的所有列的总宽度

setColumnSelectionAllowed

void setColumnSelectionAllowed(boolean flag)
设置是否可以选择此模型中的列。

参数:
flag - 如果可以选择列,则为 true;否则为 false
另请参见:
getColumnSelectionAllowed()

getColumnSelectionAllowed

boolean getColumnSelectionAllowed()
如果可以选择列,则返回 true。

返回:
如果可以选择列,则返回 true
另请参见:
setColumnSelectionAllowed(boolean)

getSelectedColumns

int[] getSelectedColumns()
返回所有选定列的索引数组。

返回:
包含所有选定列索引的整数数组;如果没有选定的列,则返回一个空数组

getSelectedColumnCount

int getSelectedColumnCount()
返回选定的列数。

返回:
选定的列数;如果没有选定的列,则返回 0

setSelectionModel

void setSelectionModel(ListSelectionModel newModel)
设置选择模型。

参数:
newModel - ListSelectionModel 对象
另请参见:
getSelectionModel()

getSelectionModel

ListSelectionModel getSelectionModel()
返回当前的选择模型。

返回:
ListSelectionModel 对象
另请参见:
setSelectionModel(javax.swing.ListSelectionModel)

addColumnModelListener

void addColumnModelListener(TableColumnModelListener x)
为表列模型事件添加侦听器。

参数:
x - TableColumnModelListener 对象

removeColumnModelListener

void removeColumnModelListener(TableColumnModelListener x)
移除表列模型事件的侦听器。

参数:
x - TableColumnModelListener 对象

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策