Module  java.desktop
软件包  javax.swing.table

Class DefaultTableColumnModel

    • 字段详细信息

      • tableColumns

        protected Vector<TableColumn> tableColumns
        此模型中的TableColumn对象数组
      • columnMargin

        protected int columnMargin
        每列之间的宽度
      • listenerList

        protected EventListenerList listenerList
        TableColumnModelListener列表
      • changeEvent

        protected transient ChangeEvent changeEvent
        更改事件(只需一个)
      • columnSelectionAllowed

        protected boolean columnSelectionAllowed
        此列模型允许列选择
      • totalColumnWidth

        protected int totalColumnWidth
        所有列的组合宽度的本地缓存
    • 构造方法详细信息

      • DefaultTableColumnModel

        public DefaultTableColumnModel​()
        创建默认表列模型。
    • 方法详细信息

      • removeColumn

        public void removeColumn​(TableColumn column)
        删除columntableColumns阵列。 如果column不在表的列列表中,此方法将column tile来调整头和表视图的大小。 这种方法也会向其听众发布一个columnRemoved事件。
        Specified by:
        removeColumn在接口 TableColumnModel
        参数
        column - 要删除的 TableColumn
        另请参见:
        addColumn(javax.swing.table.TableColumn)
      • moveColumn

        public void moveColumn​(int columnIndex,
                               int newIndex)
        将列和标题从columnIndex移动到newIndex 在旧列columnIndex现在被发现在newIndex 以前在newIndex的列向左或向右移动以腾出空间。 如果columnIndex等于newIndex则不会移动任何列。 此方法也会向其收听者发布一个columnMoved事件。
        Specified by:
        moveColumn在接口 TableColumnModel
        参数
        columnIndex - 要移动的列的索引
        newIndex - 移动列的新索引
        异常
        IllegalArgumentException - 如果 columnnewIndex不在有效范围内
      • getColumnCount

        public int getColumnCount​()
        返回 tableColumns数组中的列数。
        Specified by:
        getColumnCount在接口 TableColumnModel
        结果
        tableColumns数组中的列数
        另请参见:
        getColumns()
      • getColumnIndex

        public int getColumnIndex​(Object identifier)
        当使用 equals进行比较时,返回 tableColumns数组中的标识符等于 identifier的第一列的索引。
        Specified by:
        getColumnIndex在接口 TableColumnModel
        参数
        identifier - 标识符对象
        结果
        tableColumns阵列中第一列的标识符等于 identifier
        异常
        IllegalArgumentException - 如果 identifiernull ,或者如果没有 TableColumn有这个 identifier
        另请参见:
        getColumn(int)
      • getColumn

        public TableColumn getColumn​(int columnIndex)
        返回 TableColumn在列对象 columnIndex
        Specified by:
        getColumn接口 TableColumnModel
        参数
        columnIndex - 所需列的索引
        结果
        该列的 TableColumn对象为 columnIndex
      • getColumnIndexAtX

        public int getColumnIndexAtX​(int x)
        返回位于x的列的索引,如果没有列覆盖此点,则返回-1。 与Swing的可分离模型架构保持一致,TableColumnModel不知道表列如何在屏幕上实际显示。 列的视觉呈现是使用此模型(通常为JTable)的视图/控制器对象的责任。 视图/控制器不需要从左到右依次显示列。 例如,可以从右到左显示列,以容纳区域设置首选项,或者可能在用户的请求下隐藏某些列。 因为模型不知道列如何布置在屏幕上,所以给定的xPosition不应该被认为是2D图形空间中的坐标。 相反,它应该被认为是从模型中第一列开始的宽度。 如果需要2D空间中给定X坐标的列索引, JTable.columnAtPoint可以使用JTable.columnAtPoint
        Specified by:
        getColumnIndexAtX在接口 TableColumnModel
        参数
        x - 感兴趣的水平位置
        结果
        列的索引,如果没有列,则为-1
        另请参见:
        JTable.columnAtPoint(java.awt.Point)
      • getTotalColumnWidth

        public int getTotalColumnWidth​()
        返回所有列的总合并宽度。
        Specified by:
        getTotalColumnWidth在接口 TableColumnModel
        结果
        totalColumnWidth属性
      • getSelectedColumns

        public int[] getSelectedColumns​()
        返回所选列的数组。 如果selectionModelnull ,则返回一个空数组。
        Specified by:
        getSelectedColumns在接口 TableColumnModel
        结果
        所选列的数组或空数组,如果没有选择,或 selectionModelnull
      • fireColumnAdded

        protected void fireColumnAdded​(TableColumnModelEvent e)
        通知所有在此事件类型上通知有兴趣的听众。 事件实例使用传递给fire方法的参数进行懒惰创建。
        参数
        e - 收到的事件
        另请参见:
        EventListenerList
      • fireColumnRemoved

        protected void fireColumnRemoved​(TableColumnModelEvent e)
        通知所有在此事件类型上通知有兴趣的听众。 事件实例使用传递给fire方法的参数进行懒惰创建。
        参数
        e - 收到的事件
        另请参见:
        EventListenerList
      • fireColumnMoved

        protected void fireColumnMoved​(TableColumnModelEvent e)
        通知所有在此事件类型上通知有兴趣的听众。 事件实例使用传递给fire方法的参数进行懒惰创建。
        参数
        e - 收到的事件
        另请参见:
        EventListenerList
      • fireColumnSelectionChanged

        protected void fireColumnSelectionChanged​(ListSelectionEvent e)
        通知所有在此事件类型上通知有兴趣的听众。 事件实例使用传递给fire方法的参数进行懒惰创建。
        参数
        e - 收到的事件
        另请参见:
        EventListenerList
      • fireColumnMarginChanged

        protected void fireColumnMarginChanged​()
        通知所有在此事件类型上通知有兴趣的听众。 事件实例使用传递给fire方法的参数进行懒惰创建。
        另请参见:
        EventListenerList
      • getListeners

        public <T extends EventListener> T[] getListeners​(Class<T> listenerType)
        返回当前注册为FooListener的所有对象的数组。 FooListener使用addFooListener方法注册。

        您可以使用类文字指定listenerType参数,如FooListener.class 例如,您可以使用以下代码查询DefaultTableColumnModel m其列模型侦听器:

          ColumnModelListener[] cmls = (ColumnModelListener[])(m.getListeners(ColumnModelListener.class)); 
        如果没有这样的侦听器存在,这个方法返回一个空数组。
        参数类型
        T - 侦听器类型
        参数
        listenerType - 所请求的听众的类型
        结果
        在此模型上注册为 FooListener s的所有对象的数组,如果没有添加此类侦听器,则为空数组
        异常
        ClassCastException - 如果 listenerType没有指定实现 java.util.EventListener的类或接口
        从以下版本开始:
        1.3
        另请参见:
        getColumnModelListeners()
      • createSelectionModel

        protected ListSelectionModel createSelectionModel​()
        创建一个新的默认列表选择模型。
        结果
        一个新创建的默认列表选择模型。
      • recalcWidthCache

        protected void recalcWidthCache​()
        重新计算所有列的总合并宽度。 更新totalColumnWidth属性。