javax.swing
Interface  ListCellRenderer
- All Known Implementing Classes: 
 - DefaultListCellRenderer, BasicComboBoxRenderer
 
- public abstract interface ListCellRenderer
 
Identifies components that can be used as "rubber stamps" to paint
 the cells in a JList.  For example, to use a JLabel as a
 ListCellRenderer, you would write something like this:
 
 class MyCellRenderer extends JLabel implements ListCellRenderer {
     public MyCellRenderer() {
         setOpaque(true);
     }
     public Component getListCellRendererComponent(
         JList list,
         Object value,
         int index,
         boolean isSelected,
         boolean cellHasFocus)
     {
         setText(value.toString());
         setBackground(isSelected ? Color.red : Color.white);
         setForeground(isSelected ? Color.white : Color.black);
         return this;
     }
 }
 
- See Also: 
 JList, 
DefaultListCellRenderer
 
getListCellRendererComponent
public Component getListCellRendererComponent(JList list,
                                              Object value,
                                              int index,
                                              boolean isSelected,
                                              boolean cellHasFocus)
- Return a component that has been configured to display the specified
 value. That component's 
paint method is then called to
 "render" the cell.  If it is necessary to compute the dimensions
 of a list because the list cells do not have a fixed size, this method
 is called to generate a component on which getPreferredSize
 can be invoked.
- Parameters:
 list - The JList we're painting.value - The value returned by list.getModel().getElementAt(index).index - The cells index.isSelected - True if the specified cell was selected.cellHasFocus - True if the specified cell has the focus.- Returns:
 - A component whose paint() method will render the specified value.
 - See Also: 
 JList, 
ListSelectionModel, 
ListModel
 
 
Submit a bug or feature
Java is a trademark or registered trademark of Sun Microsystems,  Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A.  All Rights Reserved.