public abstract class PanelTableCellRenderer extends JPanel implements Serializable, TableCellRenderer
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. As of 1.4, support for long term storage of all JavaBeansTM has
been added to the
java.beans package. Please see XMLEncoder.
JTable,
Serialized FormJPanel.AccessibleJPanelJComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| Modifier and Type | Field and Description |
|---|---|
protected static Border |
noFocusBorder |
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
PanelTableCellRenderer()
Creates a default table cell renderer.
|
| Modifier and Type | Method and Description |
|---|---|
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.
|
boolean |
isOpaque()
Overridden for performance reasons.
|
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.setBackground 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. |
void |
setRenderer(JComponent component) |
protected abstract void |
setValue(Object value)
Sets the
String object for the cell being rendered to
value. |
void |
updateUI()
Notification from the
UIManager that the look and feel has changed. |
void |
validate()
Overridden for performance reasons.
|
getAccessibleContext, getUI, getUIClassID, paramString, setUIaddAncestorListener, 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, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, 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, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateadd, 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, validateTreeaction, 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, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleprotected static Border noFocusBorder
public PanelTableCellRenderer()
public void setForeground(Color c)
JComponent.setForeground to assign the unselected-foreground color to the specified color.setForeground in class JComponentc - set the foreground color to this valuepublic void setBackground(Color c)
JComponent.setBackground to assign the unselected-background color to the specified color.setBackground in class JComponentc - set the background color to this valuepublic void updateUI()
UIManager that the look and feel has changed. Replaces the current UI object with the latest version
from the
UIManager.updateUI in class JPanelJComponent.updateUI()public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
getTableCellRendererComponent in interface TableCellRenderertable - the JTablevalue - the value to assign to the cell at [row, column]isSelected - true if cell is selectedhasFocus - true if cell has focusrow - the row of the cell to rendercolumn - the column of the cell to renderpublic boolean isOpaque()
isOpaque in class JComponentpublic void validate()
public void revalidate()
revalidate in class JComponentpublic void repaint(long tm,
int x,
int y,
int width,
int height)
repaint in class JComponentpublic void repaint(Rectangle r)
repaint in class JComponentprotected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
firePropertyChange in class Componentpublic void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
firePropertyChange in class JComponentprotected abstract void setValue(Object value)
String object for the cell being rendered to
value.value - the string value for this cell; if value is null it sets the text value to an empty
stringJLabel.setText(java.lang.String)public void setRenderer(JComponent component)
Copyright © 2012–2015 SoftSmithy. All rights reserved.