Die Renderer-Klasse dient der Darstellung des Eigenschaftswertes. Dieser Wert kann z.B. als Text oder als Kontrollkästchen dargestellt werden.
Der Renderer erhält ein zuvor vom Converter erstelltes Object und besitzt nun die Aufgabe, das Object als JComponent zurückzugeben.
Eine neue Renderer-Klasse sollte die Klasse AbstractGroupRenderer erweitern, die die Methoden
String makeToolTipLine(Object arg0)
JComponent createRendererComponent()
und
void setValue(Object arg0)
vorschreibt.
Beispiel einer Renderer-Klasse:
public class LabelRenderer extends AbstractGroupRenderer { private JLabel lab; protected String makeToolTipLine(Object arg0) { return null; } protected JComponent createRendererComponent() { return lab = new JLabel(); } protected void setValue(Object arg0) { lab.setText((arg0 == null )? "" : arg0); } }
Die Methode
String makeToolTipLine(Object arg0)
ist für die Textdarstellung des Tooltips im Formular- und Berichteditor zuständig.
Die Methode
JComponent createRendererComponent()
erzeugt ein graphisches Objekt für die Darstellung des Eigenschaftswertes.
Die Methode
void setValue(Object arg0)
setzt den Wert des graphischen Objektes. Im Beispiel wird der Beschriftungstext als Text des JLabel gesetzt.
Die LabelRenderer-Klasse kann nun in das Bean-Schema eingetragen werden.