- java.lang.Object
- 
- java.awt.Component
- 
- java.awt.Container
- 
- javax.swing.JComponent
- 
- javax.swing.table.JTableHeader
 
 
 
 
- 
- All Implemented Interfaces:
- ImageObserver,- MenuContainer,- Serializable,- EventListener,- Accessible,- TableColumnModelListener
 
 public class JTableHeader extends JComponent implements TableColumnModelListener, Accessible This is the object which manages the header of theJTable.Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the java.beanspackage. Please seeXMLEncoder.- See Also:
- JTable, Serialized Form
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description protected classJTableHeader.AccessibleJTableHeaderThis class implements accessibility support for theJTableHeaderclass.- 
Nested classes/interfaces declared in class javax.swing.JComponentJComponent.AccessibleJComponent
 - 
Nested classes/interfaces declared in class java.awt.ContainerContainer.AccessibleAWTContainer
 - 
Nested classes/interfaces declared in class java.awt.ComponentComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected TableColumnModelcolumnModelTheTableColumnModelof the table header.protected TableColumndraggedColumnThe index of the column being dragged.protected intdraggedDistanceThe distance from its original position the column has been dragged.protected booleanreorderingAllowedIf true, reordering of columns are allowed by the user; the default is true.protected booleanresizingAllowedIf true, resizing of columns are allowed by the user; the default is true.protected TableColumnresizingColumnThe index of the column being resized.protected JTabletableThe table for which this object is the header; the default isnull.protected booleanupdateTableInRealTimeObsolete as of Java 2 platform v1.3.- 
Fields declared in class javax.swing.JComponentlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 - 
Fields declared in class java.awt.ComponentaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 - 
Fields declared in interface java.awt.image.ImageObserverABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
- 
 - 
Constructor SummaryConstructors Constructor Description JTableHeader()Constructs aJTableHeaderwith a defaultTableColumnModel.JTableHeader(TableColumnModel cm)Constructs aJTableHeaderwhich is initialized withcmas the column model.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcolumnAdded(TableColumnModelEvent e)Invoked when a column is added to the table column model.intcolumnAtPoint(Point point)Returns the index of the column thatpointlies in, or -1 if it lies out of bounds.voidcolumnMarginChanged(ChangeEvent e)Invoked when a column is moved due to a margin change.voidcolumnMoved(TableColumnModelEvent e)Invoked when a column is repositioned.voidcolumnRemoved(TableColumnModelEvent e)Invoked when a column is removed from the table column model.voidcolumnSelectionChanged(ListSelectionEvent e)Invoked when the selection model of theTableColumnModelis changed.protected TableColumnModelcreateDefaultColumnModel()Returns the default column model object which is aDefaultTableColumnModel.protected TableCellRenderercreateDefaultRenderer()Returns a default renderer to be used when no header renderer is defined by aTableColumn.AccessibleContextgetAccessibleContext()Gets the AccessibleContext associated with this JTableHeader.TableColumnModelgetColumnModel()Returns theTableColumnModelthat contains all column information of this table header.TableCellRenderergetDefaultRenderer()Returns the default renderer used when noheaderRendereris defined by aTableColumn.TableColumngetDraggedColumn()Returns the dragged column, if and only if, a drag is in process, otherwise returnsnull.intgetDraggedDistance()Returns the column's horizontal distance from its original position, if and only if, a drag is in process.RectanglegetHeaderRect(int column)Returns the rectangle containing the header tile atcolumn.DimensiongetPreferredSize()Returns the preferred size of the table header.booleangetReorderingAllowed()Returns true if the user is allowed to rearrange columns by dragging their headers, false otherwise.booleangetResizingAllowed()Returns true if the user is allowed to resize columns by dragging between their headers, false otherwise.TableColumngetResizingColumn()Returns the resizing column.JTablegetTable()Returns the table associated with this header.StringgetToolTipText(MouseEvent event)Allows the renderer's tips to be used if there is text set.TableHeaderUIgetUI()Returns the look and feel (L&F) object that renders this component.StringgetUIClassID()Returns the suffix used to construct the name of the look and feel (L&F) class used to render this component.booleangetUpdateTableInRealTime()Obsolete as of Java 2 platform v1.3.protected voidinitializeLocalVars()Initializes the local variables and properties with default values.protected StringparamString()Returns a string representation of thisJTableHeader.voidresizeAndRepaint()Sizes the header and marks it as needing display.voidsetColumnModel(TableColumnModel columnModel)Sets the column model for this table tonewModeland registers for listener notifications from the new column model.voidsetDefaultRenderer(TableCellRenderer defaultRenderer)Sets the default renderer to be used when noheaderRendereris defined by aTableColumn.voidsetDraggedColumn(TableColumn aColumn)Sets the header'sdraggedColumntoaColumn.voidsetDraggedDistance(int distance)Sets the header'sdraggedDistancetodistance.voidsetReorderingAllowed(boolean reorderingAllowed)Sets whether the user can drag column headers to reorder columns.voidsetResizingAllowed(boolean resizingAllowed)Sets whether the user can resize columns by dragging between headers.voidsetResizingColumn(TableColumn aColumn)Sets the header'sresizingColumntoaColumn.voidsetTable(JTable table)Sets the table associated with this header.voidsetUI(TableHeaderUI ui)Sets the look and feel (L&F) object that renders this component.voidsetUpdateTableInRealTime(boolean flag)Obsolete as of Java 2 platform v1.3.voidupdateUI()Notification from theUIManagerthat the look and feel (L&F) has changed.- 
Methods declared in class javax.swing.JComponentaddAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 - 
Methods declared in class java.awt.Containeradd, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
 - 
Methods declared in class java.awt.Componentaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
- 
 
- 
- 
- 
Field Detail- 
tableprotected JTable table The table for which this object is the header; the default isnull.
 - 
columnModelprotected TableColumnModel columnModel TheTableColumnModelof the table header.
 - 
reorderingAllowedprotected boolean reorderingAllowed If true, reordering of columns are allowed by the user; the default is true.
 - 
resizingAllowedprotected boolean resizingAllowed If true, resizing of columns are allowed by the user; the default is true.
 - 
updateTableInRealTimeprotected boolean updateTableInRealTime Obsolete as of Java 2 platform v1.3. Real time repaints, in response to column dragging or resizing, are now unconditional.
 - 
resizingColumnprotected transient TableColumn resizingColumn The index of the column being resized.nullif not resizing.
 - 
draggedColumnprotected transient TableColumn draggedColumn The index of the column being dragged.nullif not dragging.
 - 
draggedDistanceprotected transient int draggedDistance The distance from its original position the column has been dragged.
 
- 
 - 
Constructor Detail- 
JTableHeaderpublic JTableHeader() Constructs aJTableHeaderwith a defaultTableColumnModel.- See Also:
- createDefaultColumnModel()
 
 - 
JTableHeaderpublic JTableHeader(TableColumnModel cm) Constructs aJTableHeaderwhich is initialized withcmas the column model. Ifcmisnullthis method will initialize the table header with a defaultTableColumnModel.- 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
 
 - 
getTablepublic JTable getTable() Returns the table associated with this header.- Returns:
- the tableproperty
 
 - 
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()
 
 - 
getReorderingAllowedpublic 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 reorderingAllowedproperty
- 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()
 
 - 
getResizingAllowedpublic 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 resizingAllowedproperty
- See Also:
- setResizingAllowed(boolean)
 
 - 
getDraggedColumnpublic TableColumn getDraggedColumn() Returns the dragged column, if and only if, a drag is in process, otherwise returnsnull.- Returns:
- the dragged column, if a drag is in
          process, otherwise returns null
- See Also:
- getDraggedDistance()
 
 - 
getDraggedDistancepublic 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()
 
 - 
getResizingColumnpublic TableColumn getResizingColumn() Returns the resizing column. If no column is being resized this method returnsnull.- Returns:
- the resizing column, if a resize is in process, otherwise
          returns null
 
 - 
setUpdateTableInRealTimepublic 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
 
 - 
getUpdateTableInRealTimepublic 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
 
 - 
setDefaultRendererpublic void setDefaultRenderer(TableCellRenderer defaultRenderer) Sets the default renderer to be used when noheaderRendereris defined by aTableColumn.- Parameters:
- defaultRenderer- the default renderer
- Since:
- 1.3
 
 - 
getDefaultRendererpublic TableCellRenderer getDefaultRenderer() Returns the default renderer used when noheaderRendereris defined by aTableColumn.- Returns:
- the default renderer
- Since:
- 1.3
 
 - 
columnAtPointpublic int columnAtPoint(Point point) Returns the index of the column thatpointlies in, or -1 if it lies out of bounds.- Parameters:
- point- if this- pointlies 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 pointlies in, or -1 if it lies out of bounds
 
 - 
getHeaderRectpublic Rectangle getHeaderRect(int column) Returns the rectangle containing the header tile atcolumn. When thecolumnparameter is out of bounds this method uses the same conventions as theJTablemethodgetCellRect.- Parameters:
- column- index of the column
- Returns:
- the rectangle containing the header tile at column
- See Also:
- JTable.getCellRect(int, int, boolean)
 
 - 
getToolTipTextpublic String getToolTipText(MouseEvent event) Allows the renderer's tips to be used if there is text set.- Overrides:
- getToolTipTextin 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
 
 - 
getPreferredSizepublic Dimension getPreferredSize() Returns the preferred size of the table header. This is the size required to display the header and requested for the viewport. The returnedDimensionwidthwill always be calculated by the underlying TableHeaderUI, regardless of any width specified byJComponent.setPreferredSize(java.awt.Dimension)- Overrides:
- getPreferredSizein class- JComponent
- Returns:
- the size
- See Also:
- JComponent.setPreferredSize(java.awt.Dimension),- ComponentUI
 
 - 
getUIpublic TableHeaderUI getUI() Returns the look and feel (L&F) object that renders this component.- Overrides:
- getUIin class- JComponent
- Returns:
- the TableHeaderUIobject that renders this component
 
 - 
setUIpublic void setUI(TableHeaderUI ui) Sets the look and feel (L&F) object that renders this component.- Parameters:
- ui- the- TableHeaderUIL&F object
- See Also:
- UIDefaults.getUI(javax.swing.JComponent)
 
 - 
updateUIpublic void updateUI() Notification from theUIManagerthat the look and feel (L&F) has changed. Replaces the current UI object with the latest version from theUIManager.- Overrides:
- updateUIin class- JComponent
- See Also:
- JComponent.updateUI()
 
 - 
getUIClassIDpublic String getUIClassID() Returns the suffix used to construct the name of the look and feel (L&F) class used to render this component.- Overrides:
- getUIClassIDin class- JComponent
- Returns:
- the string "TableHeaderUI"
- See Also:
- JComponent.getUIClassID(),- UIDefaults.getUI(javax.swing.JComponent)
 
 - 
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 tonewModeland registers for listener notifications from the new column model.- Parameters:
- columnModel- the new data source for this table
- Throws:
- IllegalArgumentException- if- newModelis- null
- See Also:
- getColumnModel()
 
 - 
getColumnModelpublic TableColumnModel getColumnModel() Returns theTableColumnModelthat contains all column information of this table header.- Returns:
- the columnModelproperty
- See Also:
- setColumnModel(javax.swing.table.TableColumnModel)
 
 - 
columnAddedpublic void columnAdded(TableColumnModelEvent e) Invoked when a column is added to the table column model.Application code will not use these methods explicitly, they are used internally by JTable.- Specified by:
- columnAddedin interface- TableColumnModelListener
- Parameters:
- e- the event received
- See Also:
- TableColumnModelListener
 
 - 
columnRemovedpublic void columnRemoved(TableColumnModelEvent e) Invoked when a column is removed from the table column model.Application code will not use these methods explicitly, they are used internally by JTable.- Specified by:
- columnRemovedin interface- TableColumnModelListener
- Parameters:
- e- the event received
- See Also:
- TableColumnModelListener
 
 - 
columnMovedpublic void columnMoved(TableColumnModelEvent e) Invoked when a column is repositioned.Application code will not use these methods explicitly, they are used internally by JTable.- Specified by:
- columnMovedin interface- TableColumnModelListener
- Parameters:
- e- the event received
- See Also:
- TableColumnModelListener
 
 - 
columnMarginChangedpublic void columnMarginChanged(ChangeEvent e) Invoked when a column is moved due to a margin change.Application code will not use these methods explicitly, they are used internally by JTable.- Specified by:
- columnMarginChangedin interface- TableColumnModelListener
- Parameters:
- e- the event received
- See Also:
- TableColumnModelListener
 
 - 
columnSelectionChangedpublic void columnSelectionChanged(ListSelectionEvent e) Invoked when the selection model of theTableColumnModelis 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:
- columnSelectionChangedin interface- TableColumnModelListener
- Parameters:
- e- the event received
- See Also:
- TableColumnModelListener
 
 - 
createDefaultColumnModelprotected TableColumnModel createDefaultColumnModel() Returns the default column model object which is aDefaultTableColumnModel. A subclass can override this method to return a different column model object- Returns:
- the default column model object
 
 - 
createDefaultRendererprotected TableCellRenderer createDefaultRenderer() Returns a default renderer to be used when no header renderer is defined by aTableColumn.- Returns:
- the default table column renderer
- Since:
- 1.3
 
 - 
initializeLocalVarsprotected void initializeLocalVars() Initializes the local variables and properties with default values. Used by the constructor methods.
 - 
resizeAndRepaintpublic void resizeAndRepaint() Sizes the header and marks it as needing display. Equivalent torevalidatefollowed byrepaint.
 - 
setDraggedColumnpublic void setDraggedColumn(TableColumn aColumn) Sets the header'sdraggedColumntoaColumn.Application code will not use this method explicitly, it is used internally by the column dragging mechanism. - Parameters:
- aColumn- the column being dragged, or- nullif no column is being dragged
 
 - 
setDraggedDistancepublic void setDraggedDistance(int distance) Sets the header'sdraggedDistancetodistance.- Parameters:
- distance- the distance dragged
 
 - 
setResizingColumnpublic void setResizingColumn(TableColumn aColumn) Sets the header'sresizingColumntoaColumn.Application code will not use this method explicitly, it is used internally by the column sizing mechanism. - Parameters:
- aColumn- the column being resized, or- nullif no column is being resized
 
 - 
paramStringprotected String paramString() Returns a string representation of thisJTableHeader. 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 benull.Overriding paramStringto provide information about the specific new aspects of the JFC components.- Overrides:
- paramStringin class- JComponent
- Returns:
- a string representation of this JTableHeader
 
 - 
getAccessibleContextpublic 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:
- getAccessibleContextin interface- Accessible
- Overrides:
- getAccessibleContextin class- Component
- Returns:
- an AccessibleJTableHeader that serves as the AccessibleContext of this JTableHeader
 
 
- 
 
-