Správci vlastního nastavení vlastnosti objektu Java bean

Správce vlastního nastavení je dodatečné dialogové okno, které mohou uživatelé spustit, aby změnili vlastnosti objektu Java bean. Můžete vytvořit třídy správce vlastního nastavení pro úpravu vlastností objektů Java Bean, které přidáte k vizuálnímu editoru.

Třída správce vlastního nastavení by měla implementovat rozhraní java.beans.Customizer a také by měla být podtřídou java.awt.Component. Správce vlastního nastavení obvykle představuje pořadač, jako například java.awt.Panel nebo javax.swing.JPanel, který obsahuje obslužné prvky umožňující zobrazení a manipulaci s vlastnostmi objektů Java Bean. Pokud dojde ke spuštění správce vlastního nastavení tlačítkem na panelu nástrojů, hostí ji dialogové okno s tlačítky OK a Storno.

Pokud uživatel správce vlastního nastavení otevře, je mu poskytnut objekt Java bean, který přizpůsobuje, jako část metody public void setObject(Object bean);. Správce vlastního nastavení je poté schopen provádět změny přímo v argumentu.

Rozhraní java.beans.Customizer má také metody public void addPropertyChangeListener(PropertyChangeListener listener); a public void removePropertyChangeListener(PropertyChangeListener listener). Vizuální editor se přidá jako listener do správce vlastního nastavení a pokud má správce vlastního nastavení obnovit vzhled objektu Java bean v pohledu Design, měl by změnu vlastnosti signalizovat voláním svých listenerů s kteroukoli z metod firePropertyChange(... s kteroukoli množinou argumentů.

Pokud váš uživatel klepne na volbu OK, vizuální editor se pokusí určit, jaké změny správce vlastního nastavení provedl u objektu Java bean, aby mohl být aktualizován zdrojový kód jazyka Java. Pro provedení tohoto postupu vizuální editor zkopíruje všechny vlastnosti objektu Java bean před spuštěním správce vlastního nastavení a poté je porovná s vlastnostmi po uzavření správce vlastního nastavení. V případě, že se některá z vlastností liší (vrací hodnotu false metodě equals), určí se, že došlo ke změně. Pro určení argumentu metody set pro danou vlastnost se vytvoří editor vlastností na java.beans.PropertyDescriptor. Poté je vyvolán metodami public void setValue(Object) a public String getJavaInitializationString();. A podobně, pokud klepnete na volbu Storno, protože správce vlastního nastavení již změnil objekt Java bean, vizuální editor se dotazuje na množinu vlastností a resetuje ty, které se liší od svého výchozího stavu.

Pokud je správce vlastního nastavení nadstavba nejvyšší úrovně, která nevyžaduje spuštění dialogového okna, jako například java.awt.Frame nebo javax.swing.JFrame, vizuální editor spustí správce vlastního nastavení tak, jak je. Protože tento typ správce vlastního nastavení odpovídá za svoji vlastní sadu tlačítek a vizuální editor žádným způsobem nezjistí, zda došlo ke zrušení nebo potvrzení, kdykoli je správce vlastního nastavení uzavřen, jsou dotazovány vlastnosti nejvyšší úrovně, aby se zjistilo, zda byly změněny. Proto pokud správce vlastního nastavení provede zrušení, musí tak učinit, a tak zajistit, aby se obnovil počáteční stav vlastností objektu Java bean.

Po zapsání musí být správce vlastního nastavení nastaven na deskriptoru objektu bean pro třídu BeanInfo pro objekt Java bean:

public class MyClassBeanInfo extends SimpleBeanInfo {
    public BeanDescriptor getBeanDescriptor() {
        return new BeanDescriptor(MyClass.class,
MyCustomizer.class);
    }
}

(C) Copyright IBM Corporation 1999, 2004. Všechna práva vyhrazena.