eva/3 Application BuilderDeveloping Additional eva/3 ComponentsUser BeansClasses for Beans 

Editor Class

The editor class is used to edit the property values in the Properties dialog of the form and report editor. A new editor class should extend the class SimpleGroupEditor.

Exmple of an editor class:

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.