javax.swing.table
Class DefaultTableCellRenderer
java.lang.Object
|
+--java.awt.Component
|
+--java.awt.Container
|
+--javax.swing.JComponent
|
+--javax.swing.JLabel
|
+--javax.swing.table.DefaultTableCellRenderer
All Implemented Interfaces: Accessible , ImageObserver , MenuContainer , Serializable , SwingConstants , TableCellRenderer
Direct Known Subclasses: DefaultTableCellRenderer.UIResource
public class DefaultTableCellRenderer extends JLabel implements TableCellRenderer , Serializable
The standard class for rendering (displaying) individual cells
in a JTable
.
Implementation Note:
This class inherits from JLabel
, a standard component class.
However JTable
employs a unique mechanism for rendering
its cells and therefore requires some slightly modified behavior
from its cell renderer.
The table class defines a single cell renderer and uses it as a
as a rubber-stamp for rendering all cells in the table;
it renders the first cell,
changes the contents of that cell renderer,
shifts the origin to the new location, re-draws it, and so on.
The standard JLabel
component was not
designed to be used this way and we want to avoid
triggering a revalidate
each time the
cell is drawn. This would greatly decrease performance because the
revalidate
message would be
passed up the hierarchy of the container to determine whether any other
components would be affected. So this class
overrides the validate
, revalidate
,
repaint
, and firePropertyChange
methods to be
no-ops. If you write your own renderer,
please keep this performance consideration in mind.
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. A future release of Swing will provide support for
long term persistence.
See Also: JTable
, Serialized Form
Fields inherited from interface javax.swing.SwingConstants
BOTTOM , CENTER , EAST , HORIZONTAL , LEADING , LEFT , NORTH , NORTH_EAST , NORTH_WEST , RIGHT , SOUTH , SOUTH_EAST , SOUTH_WEST , TOP , TRAILING , VERTICAL , WEST
Method Summary
void
firePropertyChange (String propertyName,
boolean oldValue,
boolean newValue)
Overridden for performance reasons.
protected void
firePropertyChange (String propertyName,
Object oldValue,
Object newValue)
Overridden for performance reasons.
Component
getTableCellRendererComponent (JTable table,
Object value,
boolean isSelected,
boolean hasFocus,
int row,
int column)
Returns the default table cell renderer.
void
repaint (long tm,
int x,
int y,
int width,
int height)
Overridden for performance reasons.
void
repaint (Rectangle r)
Overridden for performance reasons.
void
revalidate ()
Overridden for performance reasons.
void
setBackground (Color c)
Overrides JComponent.setForeground
to assign
the unselected-background color to the specified color.
void
setForeground (Color c)
Overrides JComponent.setForeground
to assign
the unselected-foreground color to the specified color.
protected void
setValue (Object value)
Sets the string for the cell being rendered to value
.
void
updateUI ()
Notification from the UIManager
that the look and feel
[L&F] has changed.
void
validate ()
Overridden for performance reasons.
Methods inherited from class javax.swing.JLabel
checkHorizontalKey , checkVerticalKey , getAccessibleContext , getDisabledIcon , getDisplayedMnemonic , getHorizontalAlignment , getHorizontalTextPosition , getIcon , getIconTextGap , getLabelFor , getText , getUI , getUIClassID , getVerticalAlignment , getVerticalTextPosition , imageUpdate , paramString , setDisabledIcon , setDisplayedMnemonic , setDisplayedMnemonic , setHorizontalAlignment , setHorizontalTextPosition , setIcon , setIconTextGap , setLabelFor , setText , setUI , setVerticalAlignment , setVerticalTextPosition
Methods inherited from class javax.swing.JComponent
addAncestorListener , addNotify , addPropertyChangeListener , addPropertyChangeListener , addVetoableChangeListener , computeVisibleRect , contains , createToolTip , disable , enable , firePropertyChange , firePropertyChange , firePropertyChange , firePropertyChange , firePropertyChange , firePropertyChange , firePropertyChange , fireVetoableChange , getActionForKeyStroke , getActionMap , getAlignmentX , getAlignmentY , getAutoscrolls , getBorder , getBounds , getClientProperty , getComponentGraphics , getConditionForKeyStroke , getDebugGraphicsOptions , getGraphics , getHeight , getInputMap , getInputMap , getInputVerifier , getInsets , getInsets , getListeners , getLocation , getMaximumSize , getMinimumSize , getNextFocusableComponent , getPreferredSize , getRegisteredKeyStrokes , getRootPane , getSize , getToolTipLocation , getToolTipText , getToolTipText , getTopLevelAncestor , getVerifyInputWhenFocusTarget , getVisibleRect , getWidth , getX , getY , grabFocus , hasFocus , hide , isDoubleBuffered , isFocusCycleRoot , isFocusTraversable , isLightweightComponent , isManagingFocus , isMaximumSizeSet , isMinimumSizeSet , isOpaque , isOptimizedDrawingEnabled , isPaintingTile , isPreferredSizeSet , isRequestFocusEnabled , isValidateRoot , paint , paintBorder , paintChildren , paintComponent , paintImmediately , paintImmediately , print , printAll , printBorder , printChildren , printComponent , processComponentKeyEvent , processFocusEvent , processKeyBinding , processKeyEvent , processMouseMotionEvent , putClientProperty , registerKeyboardAction , registerKeyboardAction , removeAncestorListener , removeNotify , removePropertyChangeListener , removePropertyChangeListener , removeVetoableChangeListener , requestDefaultFocus , requestFocus , resetKeyboardActions , reshape , scrollRectToVisible , setActionMap , setAlignmentX , setAlignmentY , setAutoscrolls , setBorder , setDebugGraphicsOptions , setDoubleBuffered , setEnabled , setFont , setInputMap , setInputVerifier , setMaximumSize , setMinimumSize , setNextFocusableComponent , setOpaque , setPreferredSize , setRequestFocusEnabled , setToolTipText , setUI , setVerifyInputWhenFocusTarget , setVisible , unregisterKeyboardAction , update
Methods inherited from class java.awt.Container
add , add , add , add , add , addContainerListener , addImpl , countComponents , deliverEvent , doLayout , findComponentAt , findComponentAt , getComponent , getComponentAt , getComponentAt , getComponentCount , getComponents , getLayout , insets , invalidate , isAncestorOf , layout , list , list , locate , minimumSize , paintComponents , preferredSize , printComponents , processContainerEvent , processEvent , remove , remove , removeAll , removeContainerListener , setLayout , validateTree
Methods inherited from class java.awt.Component
action , add , addComponentListener , addFocusListener , addHierarchyBoundsListener , addHierarchyListener , addInputMethodListener , addKeyListener , addMouseListener , addMouseMotionListener , bounds , checkImage , checkImage , coalesceEvents , contains , createImage , createImage , disableEvents , dispatchEvent , enable , enableEvents , enableInputMethods , getBackground , getBounds , getColorModel , getComponentOrientation , getCursor , getDropTarget , getFont , getFontMetrics , getForeground , getGraphicsConfiguration , getInputContext , getInputMethodRequests , getLocale , getLocation , getLocationOnScreen , getName , getParent , getPeer , getSize , getToolkit , getTreeLock , gotFocus , handleEvent , inside , isDisplayable , isEnabled , isLightweight , isShowing , isValid , isVisible , keyDown , keyUp , list , list , list , location , lostFocus , mouseDown , mouseDrag , mouseEnter , mouseExit , mouseMove , mouseUp , move , nextFocus , paintAll , postEvent , prepareImage , prepareImage , processComponentEvent , processHierarchyBoundsEvent , processHierarchyEvent , processInputMethodEvent , processMouseEvent , remove , removeComponentListener , removeFocusListener , removeHierarchyBoundsListener , removeHierarchyListener , removeInputMethodListener , removeKeyListener , removeMouseListener , removeMouseMotionListener , repaint , repaint , repaint , resize , resize , setBounds , setBounds , setComponentOrientation , setCursor , setDropTarget , setLocale , setLocation , setLocation , setName , setSize , setSize , show , show , size , toString , transferFocus
noFocusBorder
protected static Border noFocusBorder
DefaultTableCellRenderer
public DefaultTableCellRenderer ()
Creates a default table cell renderer.
setForeground
public void setForeground (Color c)
Overrides JComponent.setForeground
to assign
the unselected-foreground color to the specified color.
Overrides: setForeground
in class JComponent
Parameters: c
- set the foreground color to this value
setBackground
public void setBackground (Color c)
Overrides JComponent.setForeground
to assign
the unselected-background color to the specified color.
Overrides: setBackground
in class JComponent
Parameters: c
- set the background color to this value
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 JLabel
See Also: JComponent.updateUI()
getTableCellRendererComponent
public Component getTableCellRendererComponent (JTable table,
Object value,
boolean isSelected,
boolean hasFocus,
int row,
int column)
Returns the default table cell renderer.
Specified by: getTableCellRendererComponent
in interface TableCellRenderer
Parameters: table
- the JTable
value
- the value to assign to the cell at
[row, column]
isSelected
- true if cell is selectedisFocus
- true if cell has focusrow
- the row of the cell to rendercolumn
- the column of the cell to renderReturns: the default table cell renderer
validate
public void validate ()
Overridden for performance reasons.
See the Implementation Note
for more information.
Overrides: validate
in class Container
Following copied from class: java.awt.Container
See Also: Container.validate()
,
Component.invalidate()
revalidate
public void revalidate ()
Overridden for performance reasons.
See the Implementation Note
for more information.
Overrides: revalidate
in class JComponent
Following copied from class: javax.swing.JComponent
See Also: Component.invalidate()
,
Container.validate()
,
JComponent.isValidateRoot()
,
RepaintManager.addInvalidComponent(javax.swing.JComponent)
repaint
public void repaint (long tm,
int x,
int y,
int width,
int height)
Overridden for performance reasons.
See the Implementation Note
for more information.
Overrides: repaint
in class JComponent
Following copied from class: javax.swing.JComponent
See Also: Component.isShowing()
,
RepaintManager.addDirtyRegion(javax.swing.JComponent, int, int, int, int)
repaint
public void repaint (Rectangle r)
Overridden for performance reasons.
See the Implementation Note
for more information.
Overrides: repaint
in class JComponent
Following copied from class: javax.swing.JComponent
See Also: Component.isShowing()
,
RepaintManager.addDirtyRegion(javax.swing.JComponent, int, int, int, int)
firePropertyChange
protected void firePropertyChange (String propertyName,
Object oldValue,
Object newValue)
Overridden for performance reasons.
See the Implementation Note
for more information.
Overrides: firePropertyChange
in class JComponent
Following copied from class: javax.swing.JComponent
Parameters: propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the propertynewValue
- the new value of the propertySee Also: PropertyChangeSupport
firePropertyChange
public void firePropertyChange (String propertyName,
boolean oldValue,
boolean newValue)
Overridden for performance reasons.
See the Implementation Note
for more information.
Overrides: firePropertyChange
in class JComponent
Following copied from class: javax.swing.JComponent
See Also: JComponent.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object)
setValue
protected void setValue (Object value)
Sets the string for the cell being rendered to value
.
Parameters: value
- the string value for this cell; if value is
null
it sets the text value to an empty stringSee Also: JLabel.setText(java.lang.String)
Submit a bug or feature For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation . That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples. Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries. Copyright 1993-2001 Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, California, 94303, U.S.A. All Rights Reserved.