Die Editorklasse dient der Bearbeitung des Eigenschaftswertes im Eigenschaften Dialog des Formulareditors. Eine neue Editorklasse sollte die Klasse SimpleGroupEditor erweitern.
Beispiel einer Editor-Klasse:
public class LabelEditor extends SimpleGroupEditor { private JTextField field; Object value; protected JComponent createEditorComp() { field = new JTextField(); field.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { finishCellEditing(); } }); return field; } public Object getCellEditorValue() { value = field.getText(); return (isGrouped() ? new Object[] { value }: value); } protected void setCellEditorValue(Object[] arg0, Component arg1) throws InvocationTargetException { field.setText(arg0[0].toString()); value = (arg0 == null) ? null : arg0[0]; } }
Die Methode
JComponent createEditorComp()
gibt eine Komponente zurück, mit der es möglich ist, den
Eigenschaftswert zu bearbeiten. Im Beispiel wird ein JTextField
zurückgegeben, mit dem der Beschreibungstext bearbeitet werden kann. Das
JTextField
benötigt einen ActionListener,
der nach Beendigung der Eingabe die Methode finishCellEditing(); aufruft.
Die Methode
Object getCellEditorValue()
gibt ein Object zurück, das den Eigenschaftswert der Komponente enthält.
Die Methode
void setCellEditorValue(Object[] arg0, Component arg1)
sichert den Wert, der in den Editor eingegeben wurde als Object.