模块 java.desktop

类 JTableHeader

所有已实现的接口:
ImageObserver , MenuContainer , Serializable , EventListener , Accessible , TableColumnModelListener

public class JTableHeader extends JComponent implements TableColumnModelListener , Accessible
这是管理 JTable 标头的对象。

Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder

参见:
  • 字段详细信息

    • table

      protected JTable  table
      该对象是表头的表;默认为 null
    • columnModel

      protected TableColumnModel  columnModel
      表头的TableColumnModel
    • reorderingAllowed

      protected boolean reorderingAllowed
      如果为真,则用户允许对列进行重新排序;默认为真。
    • resizingAllowed

      protected boolean resizingAllowed
      如果为真,则用户允许调整列的大小;默认为真。
    • updateTableInRealTime

      protected boolean updateTableInRealTime
      自 Java 2 平台 v1.3 起已过时。响应列拖动或调整大小的实时重绘现在是无条件的。
    • resizingColumn

      protected transient TableColumn  resizingColumn
      正在调整大小的列的索引。 null 如果不调整大小。
    • draggedColumn

      protected transient TableColumn  draggedColumn
      被拖动的列的索引。 null如果不拖动。
    • draggedDistance

      protected transient int draggedDistance
      柱被拖动到其原始位置的距离。
  • 构造方法详细信息

    • JTableHeader

      public JTableHeader()
      构造一个带有默认值 TableColumnModelJTableHeader
      参见:
    • JTableHeader

      public JTableHeader(TableColumnModel  cm)
      构造一个 JTableHeader,它使用 cm 作为列模型进行初始化。如果 cmnull 此方法将使用默认值 TableColumnModel 初始化表头。
      参数:
      cm - 表的列模型
      参见:
  • 方法详情

    • setTable

      @BeanProperty (description ="The table associated with this header.") public void setTable(JTable  table)
      设置与此标题关联的表。
      参数:
      table - 新表
    • getTable

      public JTable  getTable()
      返回与此标头关联的表。
      返回:
      table 属性
    • setReorderingAllowed

      @BeanProperty (description ="Whether the user can drag column headers to reorder columns.") public void setReorderingAllowed(boolean reorderingAllowed)
      设置用户是否可以拖动列标题以重新排列列。
      参数:
      reorderingAllowed - 如果表视图允许重新排序则为真;否则为假
      参见:
    • getReorderingAllowed

      public boolean getReorderingAllowed()
      如果允许用户通过拖动标题重新排列列,则返回 true,否则返回 false。默认为真。无论此设置如何,您都可以通过编程方式重新排列列。
      返回:
      reorderingAllowed 属性
      参见:
    • setResizingAllowed

      @BeanProperty (description ="Whether the user can resize columns by dragging between headers.") public void setResizingAllowed(boolean resizingAllowed)
      设置用户是否可以通过在标题之间拖动来调整列的大小。
      参数:
      resizingAllowed - 如果表视图允许调整大小则为真
      参见:
    • getResizingAllowed

      public boolean getResizingAllowed()
      如果允许用户通过在标题之间拖动来调整列的大小,则返回 true,否则返回 false。默认为真。无论此设置如何,您都可以通过编程方式调整列的大小。
      返回:
      resizingAllowed 属性
      参见:
    • getDraggedColumn

      public TableColumn  getDraggedColumn()
      返回拖动的列,当且仅当拖动正在进行中,否则返回 null
      返回:
      拖动的列,如果正在进行拖动,则返回 null
      参见:
    • getDraggedDistance

      public int getDraggedDistance()
      返回列与其原始位置的水平距离,当且仅当正在进行拖动时。否则,返回值是没有意义的。
      返回:
      如果正在进行拖动,则列距其原始位置的水平距离,否则返回值无意义
      参见:
    • getResizingColumn

      public TableColumn  getResizingColumn()
      返回调整大小的列。如果没有调整列的大小,则此方法返回 null
      返回:
      调整大小列,如果调整大小正在进行中,否则返回 null
    • setUpdateTableInRealTime

      public void setUpdateTableInRealTime(boolean flag)
      自 Java 2 平台 v1.3 起已过时。响应列拖动或调整大小的实时重绘现在是无条件的。
      参数:
      flag - 如果 tableView 应该实时更新表体则为真
    • getUpdateTableInRealTime

      public boolean getUpdateTableInRealTime()
      自 Java 2 平台 v1.3 起已过时。响应列拖动或调整大小的实时重绘现在是无条件的。
      返回:
      如果表实时更新则为真
    • setDefaultRenderer

      public void setDefaultRenderer(TableCellRenderer  defaultRenderer)
      设置在 TableColumn 未定义 headerRenderer 时使用的默认渲染器。
      参数:
      defaultRenderer - 默认渲染器
      自从:
      1.3
    • getDefaultRenderer

      public TableCellRenderer  getDefaultRenderer()
      返回当 TableColumn 没有定义 headerRenderer 时使用的默认渲染器。
      返回:
      默认渲染器
      自从:
      1.3
    • columnAtPoint

      public int columnAtPoint(Point  point)
      返回 point 所在列的索引,如果超出范围则返回 -1。
      参数:
      point - 如果这个 point 位于一列中,将返回该列的索引;否则超出范围并返回-1
      返回:
      point 所在列的索引,如果超出范围则为 -1
    • getHeaderRect

      public Rectangle  getHeaderRect(int column)
      返回包含位于 column 的标题图块的矩形。当 column 参数越界时,此方法使用与 JTable 方法 getCellRect 相同的约定。
      参数:
      column - 列索引
      返回:
      column 处包含标题图块的矩形
      参见:
    • getToolTipText

      public String  getToolTipText(MouseEvent  event)
      如果设置了文本,则允许使用渲染器的提示。
      重写:
      getToolTipText 在类 JComponent
      参数:
      event - 事件的位置标识正确的渲染器,因此,正确的提示
      返回:
      该组件的工具提示
    • getPreferredSize

      public Dimension  getPreferredSize()
      返回表头的首选大小。这是显示标题所需的大小和视口请求的大小。返回的 Dimension width 将始终由底层 TableHeaderUI 计算,而不管 JComponent.setPreferredSize(java.awt.Dimension) 指定的任何宽度
      重写:
      getPreferredSize 在类 JComponent
      返回:
      尺寸
      参见:
    • getUI

      public TableHeaderUI  getUI()
      返回呈现此组件的外观 (L&F) 对象。
      重写:
      getUI 在类 JComponent
      返回:
      呈现此组件的 TableHeaderUI 对象
    • setUI

      public void setUI(TableHeaderUI  ui)
      设置呈现此组件的外观 (L&F) 对象。
      参数:
      ui - TableHeaderUI L&F 对象
      参见:
    • updateUI

      public void updateUI()
      来自 UIManager 的通知,外观 (L&F) 已更改。用 UIManager 的最新版本替换当前 UI 对象。
      重写:
      updateUI 在类 JComponent
      参见:
    • getUIClassID

      public String  getUIClassID()
      返回用于构造用于呈现此组件的外观 (L&F) 类名称的后缀。
      重写:
      getUIClassID 在类 JComponent
      返回:
      字符串“TableHeaderUI”
      参见:
    • setColumnModel

      @BeanProperty (description ="The object governing the way columns appear in the view.") public void setColumnModel(TableColumnModel  columnModel)
      将此表的列模型设置为 newModel 并注册来自新列模型的监听器通知。
      参数:
      columnModel - 此表的新数据源
      抛出:
      IllegalArgumentException - 如果 newModelnull
      参见:
    • getColumnModel

      public TableColumnModel  getColumnModel()
      返回包含该表头所有列信息的TableColumnModel
      返回:
      columnModel 属性
      参见:
    • columnAdded

      public void columnAdded(TableColumnModelEvent  e)
      在将列添加到表列模型时调用。

      应用程序代码不会显式使用这些方法,它们由 JTable 在内部使用。

      指定者:
      columnAdded 在接口 TableColumnModelListener
      参数:
      e - 收到的事件
      参见:
    • columnRemoved

      public void columnRemoved(TableColumnModelEvent  e)
      从表列模型中删除列时调用。

      应用程序代码不会显式使用这些方法,它们由 JTable 在内部使用。

      指定者:
      columnRemoved 在接口 TableColumnModelListener
      参数:
      e - 收到的事件
      参见:
    • columnMoved

      public void columnMoved(TableColumnModelEvent  e)
      重新定位列时调用。

      应用程序代码不会显式使用这些方法,它们由 JTable 在内部使用。

      指定者:
      columnMoved 在接口 TableColumnModelListener
      参数:
      e - 收到的事件
      参见:
    • columnMarginChanged

      public void columnMarginChanged(ChangeEvent  e)
      由于边距更改而移动列时调用。

      应用程序代码不会显式使用这些方法,它们由 JTable 在内部使用。

      指定者:
      columnMarginChanged 在接口 TableColumnModelListener
      参数:
      e - 收到的事件
      参见:
    • columnSelectionChanged

      public void columnSelectionChanged(ListSelectionEvent  e)
      TableColumnModel 的选择模型更改时调用。此方法目前没有效果(标题未重绘)。

      应用程序代码不会显式使用这些方法,它们由 JTable 在内部使用。

      指定者:
      columnSelectionChanged 在接口 TableColumnModelListener
      参数:
      e - 收到的事件
      参见:
    • createDefaultColumnModel

      protected TableColumnModel  createDefaultColumnModel()
      返回默认的列模型对象,它是一个 DefaultTableColumnModel 。子类可以覆盖此方法以返回不同的列模型对象
      返回:
      默认列模型对象
    • createDefaultRenderer

      protected TableCellRenderer  createDefaultRenderer()
      TableColumn 没有定义标题渲染器时,返回要使用的默认渲染器。
      返回:
      默认的表列渲染器
      自从:
      1.3
    • initializeLocalVars

      protected void initializeLocalVars()
      使用默认值初始化局部变量和属性。由构造方法使用。
    • resizeAndRepaint

      public void resizeAndRepaint()
      调整标题大小并将其标记为需要显示。相当于 revalidate 后跟 repaint
    • setDraggedColumn

      public void setDraggedColumn(TableColumn  aColumn)
      将标头的 draggedColumn 设置为 aColumn

      应用程序代码不会显式使用此方法,它由列拖动机制在内部使用。

      参数:
      aColumn - 被拖动的列,如果没有列被拖动则为 null
    • setDraggedDistance

      public void setDraggedDistance(int distance)
      将标头的 draggedDistance 设置为 distance
      参数:
      distance - 拖动的距离
    • setResizingColumn

      public void setResizingColumn(TableColumn  aColumn)
      将标头的 resizingColumn 设置为 aColumn

      应用程序代码不会显式使用此方法,它由列大小调整机制在内部使用。

      参数:
      aColumn - 正在调整大小的列,或者 null 如果没有正在调整列的大小
    • paramString

      protected String  paramString()
      返回此 JTableHeader 的字符串表示形式。此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。返回的字符串可能为空,但可能不是 null

      覆盖 paramString 以提供有关 JFC 组件的特定新方面的信息。

      重写:
      paramString 在类 JComponent
      返回:
      这个 JTableHeader 的字符串表示
    • getAccessibleContext

      public AccessibleContext  getAccessibleContext()
      获取与此 JTableHeader 关联的 AccessibleContext。对于 JTableHeaders,AccessibleContext 采用 AccessibleJTableHeader 的形式。如有必要,将创建一个新的 AccessibleJTableHeader 实例。
      指定者:
      getAccessibleContext 在接口 Accessible
      重写:
      getAccessibleContext 在类 Component
      返回:
      作为此 JTableHeader 的 AccessibleContext 的 AccessibleJTableHeader