Module java.desktop

Class JTableHeader

    • Field Detail

      • table

        protected JTable table
        The table for which this object is the header; the default is null.
      • columnModel

        protected TableColumnModel columnModel
        The TableColumnModel of the table header.
      • reorderingAllowed

        protected boolean reorderingAllowed
        If true, reordering of columns are allowed by the user; the default is true.
      • resizingAllowed

        protected boolean resizingAllowed
        If true, resizing of columns are allowed by the user; the default is true.
      • updateTableInRealTime

        protected boolean updateTableInRealTime
        Obsolete as of Java 2 platform v1.3. Real time repaints, in response to column dragging or resizing, are now unconditional.
      • resizingColumn

        protected transient TableColumn resizingColumn
        The index of the column being resized. null if not resizing.
      • draggedColumn

        protected transient TableColumn draggedColumn
        The index of the column being dragged. null if not dragging.
      • draggedDistance

        protected transient int draggedDistance
        The distance from its original position the column has been dragged.
    • Constructor Detail

      • JTableHeader

        public JTableHeader()
        Constructs a JTableHeader with a default TableColumnModel.
        See Also:
        createDefaultColumnModel()
      • JTableHeader

        public JTableHeader​(TableColumnModel cm)
        Constructs a JTableHeader which is initialized with cm as the column model. If cm is null this method will initialize the table header with a default TableColumnModel.
        Parameters:
        cm - the column model for the table
        See Also:
        createDefaultColumnModel()
    • Method Detail

      • setTable

        @BeanProperty(description="The table associated with this header.")
        public void setTable​(JTable table)
        Sets the table associated with this header.
        Parameters:
        table - the new table
      • getTable

        public JTable getTable()
        Returns the table associated with this header.
        Returns:
        the table property
      • setReorderingAllowed

        @BeanProperty(description="Whether the user can drag column headers to reorder columns.")
        public void setReorderingAllowed​(boolean reorderingAllowed)
        Sets whether the user can drag column headers to reorder columns.
        Parameters:
        reorderingAllowed - true if the table view should allow reordering; otherwise false
        See Also:
        getReorderingAllowed()
      • getReorderingAllowed

        public boolean getReorderingAllowed()
        Returns true if the user is allowed to rearrange columns by dragging their headers, false otherwise. The default is true. You can rearrange columns programmatically regardless of this setting.
        Returns:
        the reorderingAllowed property
        See Also:
        setReorderingAllowed(boolean)
      • setResizingAllowed

        @BeanProperty(description="Whether the user can resize columns by dragging between headers.")
        public void setResizingAllowed​(boolean resizingAllowed)
        Sets whether the user can resize columns by dragging between headers.
        Parameters:
        resizingAllowed - true if table view should allow resizing
        See Also:
        getResizingAllowed()
      • getResizingAllowed

        public boolean getResizingAllowed()
        Returns true if the user is allowed to resize columns by dragging between their headers, false otherwise. The default is true. You can resize columns programmatically regardless of this setting.
        Returns:
        the resizingAllowed property
        See Also:
        setResizingAllowed(boolean)
      • getDraggedColumn

        public TableColumn getDraggedColumn()
        Returns the dragged column, if and only if, a drag is in process, otherwise returns null.
        Returns:
        the dragged column, if a drag is in process, otherwise returns null
        See Also:
        getDraggedDistance()
      • getDraggedDistance

        public int getDraggedDistance()
        Returns the column's horizontal distance from its original position, if and only if, a drag is in process. Otherwise, the the return value is meaningless.
        Returns:
        the column's horizontal distance from its original position, if a drag is in process, otherwise the return value is meaningless
        See Also:
        getDraggedColumn()
      • getResizingColumn

        public TableColumn getResizingColumn()
        Returns the resizing column. If no column is being resized this method returns null.
        Returns:
        the resizing column, if a resize is in process, otherwise returns null
      • setUpdateTableInRealTime

        public void setUpdateTableInRealTime​(boolean flag)
        Obsolete as of Java 2 platform v1.3. Real time repaints, in response to column dragging or resizing, are now unconditional.
        Parameters:
        flag - true if tableView should update the body of the table in real time
      • getUpdateTableInRealTime

        public boolean getUpdateTableInRealTime()
        Obsolete as of Java 2 platform v1.3. Real time repaints, in response to column dragging or resizing, are now unconditional.
        Returns:
        true if the table updates in real time
      • setDefaultRenderer

        public void setDefaultRenderer​(TableCellRenderer defaultRenderer)
        Sets the default renderer to be used when no headerRenderer is defined by a TableColumn.
        Parameters:
        defaultRenderer - the default renderer
        Since:
        1.3
      • getDefaultRenderer

        public TableCellRenderer getDefaultRenderer()
        Returns the default renderer used when no headerRenderer is defined by a TableColumn.
        Returns:
        the default renderer
        Since:
        1.3
      • columnAtPoint

        public int columnAtPoint​(Point point)
        Returns the index of the column that point lies in, or -1 if it lies out of bounds.
        Parameters:
        point - if this point lies within a column, the index of that column will be returned; otherwise it is out of bounds and -1 is returned
        Returns:
        the index of the column that point lies in, or -1 if it lies out of bounds
      • getHeaderRect

        public Rectangle getHeaderRect​(int column)
        Returns the rectangle containing the header tile at column. When the column parameter is out of bounds this method uses the same conventions as the JTable method getCellRect.
        Parameters:
        column - index of the column
        Returns:
        the rectangle containing the header tile at column
        See Also:
        JTable.getCellRect(int, int, boolean)
      • getToolTipText

        public String getToolTipText​(MouseEvent event)
        Allows the renderer's tips to be used if there is text set.
        Overrides:
        getToolTipText in class JComponent
        Parameters:
        event - the location of the event identifies the proper renderer and, therefore, the proper tip
        Returns:
        the tool tip for this component
      • getUI

        public TableHeaderUI getUI()
        Returns the look and feel (L&F) object that renders this component.
        Overrides:
        getUI in class JComponent
        Returns:
        the TableHeaderUI object that renders this component
      • updateUI

        public void updateUI()
        Notification from the UIManager that the look and feel (L&F) has changed. Replaces the current UI object with the latest version from the UIManager.
        Overrides:
        updateUI in class JComponent
        See Also:
        JComponent.updateUI()
      • setColumnModel

        @BeanProperty(description="The object governing the way columns appear in the view.")
        public void setColumnModel​(TableColumnModel columnModel)
        Sets the column model for this table to newModel and registers for listener notifications from the new column model.
        Parameters:
        columnModel - the new data source for this table
        Throws:
        IllegalArgumentException - if newModel is null
        See Also:
        getColumnModel()
      • columnSelectionChanged

        public void columnSelectionChanged​(ListSelectionEvent e)
        Invoked when the selection model of the TableColumnModel is changed. This method currently has no effect (the header is not redrawn).

        Application code will not use these methods explicitly, they are used internally by JTable.

        Specified by:
        columnSelectionChanged in interface TableColumnModelListener
        Parameters:
        e - the event received
        See Also:
        TableColumnModelListener
      • createDefaultColumnModel

        protected TableColumnModel createDefaultColumnModel()
        Returns the default column model object which is a DefaultTableColumnModel. A subclass can override this method to return a different column model object
        Returns:
        the default column model object
      • createDefaultRenderer

        protected TableCellRenderer createDefaultRenderer()
        Returns a default renderer to be used when no header renderer is defined by a TableColumn.
        Returns:
        the default table column renderer
        Since:
        1.3
      • initializeLocalVars

        protected void initializeLocalVars()
        Initializes the local variables and properties with default values. Used by the constructor methods.
      • resizeAndRepaint

        public void resizeAndRepaint()
        Sizes the header and marks it as needing display. Equivalent to revalidate followed by repaint.
      • setDraggedColumn

        public void setDraggedColumn​(TableColumn aColumn)
        Sets the header's draggedColumn to aColumn.

        Application code will not use this method explicitly, it is used internally by the column dragging mechanism.

        Parameters:
        aColumn - the column being dragged, or null if no column is being dragged
      • setDraggedDistance

        public void setDraggedDistance​(int distance)
        Sets the header's draggedDistance to distance.
        Parameters:
        distance - the distance dragged
      • setResizingColumn

        public void setResizingColumn​(TableColumn aColumn)
        Sets the header's resizingColumn to aColumn.

        Application code will not use this method explicitly, it is used internally by the column sizing mechanism.

        Parameters:
        aColumn - the column being resized, or null if no column is being resized
      • paramString

        protected String paramString()
        Returns a string representation of this JTableHeader. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not be null.

        Overriding paramString to provide information about the specific new aspects of the JFC components.

        Overrides:
        paramString in class JComponent
        Returns:
        a string representation of this JTableHeader
      • getAccessibleContext

        public AccessibleContext getAccessibleContext()
        Gets the AccessibleContext associated with this JTableHeader. For JTableHeaders, the AccessibleContext takes the form of an AccessibleJTableHeader. A new AccessibleJTableHeader instance is created if necessary.
        Specified by:
        getAccessibleContext in interface Accessible
        Overrides:
        getAccessibleContext in class Component
        Returns:
        an AccessibleJTableHeader that serves as the AccessibleContext of this JTableHeader