- 所有已知的实现类:
-
DefaultTableColumnModel
public interface TableColumnModel
定义了适用于
JTable
的表列模型对象的要求。
- 参见:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addColumn
(TableColumn aColumn) 将aColumn
追加到tableColumns
数组的末尾。void
为表列模型事件添加监听器。getColumn
(int columnIndex) 返回位于columnIndex
处的列的TableColumn
对象。int
返回模型中的列数。int
getColumnIndex
(Object columnIdentifier) 返回表中第一个标识符等于identifier
的列的索引,使用equals
进行比较。int
getColumnIndexAtX
(int xPosition) 返回位于水平点xPosition
处的列的索引;如果位于任何列的边界之外,则返回-1。int
返回每列中的单元格之间的宽度。返回模型中所有列的Enumeration
。boolean
如果可以选择列,则返回true。int
返回选定列的数量。int[]
返回所有选定列的索引数组。返回当前选择模型。int
返回所有列的总宽度。void
moveColumn
(int columnIndex, int newIndex) 将位于columnIndex
处的列及其标题移动到newIndex
。void
removeColumn
(TableColumn column) 从tableColumns
数组中删除TableColumn
column
。void
删除表列模型事件的监听器。void
setColumnMargin
(int newMargin) 将TableColumn
的列边距设置为newMargin
。void
setColumnSelectionAllowed
(boolean flag) 设置此模型中的列是否可以选择。void
setSelectionModel
(ListSelectionModel newModel) 设置选择模型。
-
Method Details
-
addColumn
将aColumn
追加到tableColumns
数组的末尾。此方法向其监听器发布columnAdded
事件。- 参数:
-
aColumn
- 要添加的TableColumn
- 参见:
-
removeColumn
从tableColumns
数组中删除TableColumn
column
。如果column
不在表的列列表中,则此方法不执行任何操作。此方法向其监听器发布columnRemoved
事件。- 参数:
-
column
- 要移除的TableColumn
- 参见:
-
moveColumn
void moveColumn(int columnIndex, int newIndex) 将位于columnIndex
处的列及其标题移动到newIndex
。现在,columnIndex
处的旧列将在newIndex
处找到。原来位于newIndex
处的列将左移或右移以腾出空间。如果columnIndex
等于newIndex
,则不会移动任何列。此方法向其监听器发布columnMoved
事件。- 参数:
-
columnIndex
- 要移动的列的索引 -
newIndex
- 列的新位置的索引 - 抛出:
-
IllegalArgumentException
- 如果columnIndex
或newIndex
不在有效范围内
-
setColumnMargin
void setColumnMargin(int newMargin) 将TableColumn
的列边距设置为newMargin
。此方法向其监听器发布columnMarginChanged
事件。- 参数:
-
newMargin
- 新列边距的宽度(以像素为单位) - 参见:
-
getColumnCount
int getColumnCount()返回模型中的列数。- 返回:
- 模型中的列数
-
getColumns
Enumeration<TableColumn> getColumns()返回模型中所有列的Enumeration
。- 返回:
-
模型中所有列的
Enumeration
-
getColumnIndex
返回表中第一个标识符等于identifier
的列的索引,使用equals
进行比较。- 参数:
-
columnIdentifier
- 标识符对象 - 返回:
-
第一个标识符等于
identifier
的表列的索引 - 抛出:
-
IllegalArgumentException
- 如果identifier
为null
,或没有TableColumn
具有此identifier
- 参见:
-
getColumn
返回位于columnIndex
处的列的TableColumn
对象。- 参数:
-
columnIndex
- 所需列的索引 - 返回:
-
位于
columnIndex
处的列的TableColumn
对象
-
getColumnMargin
int getColumnMargin()返回每列中的单元格之间的宽度。- 返回:
- 单元格之间的边距(以像素为单位)
-
getColumnIndexAtX
int getColumnIndexAtX(int xPosition) 返回位于水平点xPosition
处的列的索引;如果位于任何列的边界之外,则返回-1。根据Swing的可分离模型架构,TableColumnModel不知道表列实际上在屏幕上如何显示。列的视觉呈现是使用此模型的视图/控制器对象(通常是JTable)的责任。视图/控制器不必按顺序从左到右显示列。例如,列可以从右向左显示以适应区域设置偏好,或者某些列可能根据用户的请求而被隐藏。因为模型不知道列在屏幕上的布局方式,所以给定的xPosition
不应被视为二维图形空间中的坐标。相反,它应被视为从模型中第一列的开头的宽度。如果需要给定X坐标的列索引在二维空间中,可以使用JTable.columnAtPoint
。- 参数:
-
xPosition
- 从模型中第一列的开头的宽度。 - 返回:
- 列的索引;如果找不到列,则返回-1
- 参见:
-
getTotalColumnWidth
int getTotalColumnWidth()返回所有列的总宽度。- 返回:
- 所有列的总计算宽度
-
setColumnSelectionAllowed
void setColumnSelectionAllowed(boolean flag) 设置此模型中的列是否可以选择。- 参数:
-
flag
- 如果可以选择列,则为true;否则为false - 参见:
-
getColumnSelectionAllowed
boolean getColumnSelectionAllowed()如果可以选择列,则返回true。- 返回:
- 如果可以选择列,则为true
- 参见:
-
getSelectedColumns
int[] getSelectedColumns()返回所有选定列的索引数组。- 返回:
- 包含所有选定列的索引的整数数组;如果没有选定任何内容,则返回空数组
-
getSelectedColumnCount
int getSelectedColumnCount()返回选定列的数量。- 返回:
- 选定列的数量;如果没有选定列,则为0
-
setSelectionModel
设置选择模型。- 参数:
-
newModel
- 一个ListSelectionModel
对象 - 参见:
-
getSelectionModel
ListSelectionModel getSelectionModel()返回当前选择模型。- 返回:
-
一个
ListSelectionModel
对象 - 参见:
-
addColumnModelListener
为表列模型事件添加监听器。- 参数:
-
x
- 一个TableColumnModelListener
对象
-
removeColumnModelListener
删除表列模型事件的监听器。- 参数:
-
x
- 一个TableColumnModelListener
对象
-