Customizer (Java SE 26 & JDK 26)
Description: declaration: module: java.desktop, package: java.beans, interface: Customizer
Keywords: java.beans.Customizer interface

# Interface Customizer

public interface Customizer
A customizer class provides a complete custom GUI for customizing a target Java Bean.

Each customizer should inherit from the java.awt.Component class so it can be instantiated inside an AWT dialog or panel.

Each customizer should have a null constructor.

Since:
  1.1

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addPropertyChangeListener(PropertyChangeListener listener)`
  Register a listener for the PropertyChange event.
  `void`
  `removePropertyChangeListener(PropertyChangeListener listener)`
  Remove a listener for the PropertyChange event.
  `void`
  `setObject(Object bean)`
  Set the object to be customized.

- ## Method Details

  - ### setObject

    void setObject(Object bean)
    Set the object to be customized. This method should be called only once, before the Customizer has been added to any parent AWT container.
    Parameters:
      `bean` - The object to be customized.

  - ### addPropertyChangeListener

    void addPropertyChangeListener(PropertyChangeListener listener)
    Register a listener for the PropertyChange event. The customizer should fire a PropertyChange event whenever it changes the target bean in a way that might require the displayed properties to be refreshed.
    Parameters:
      `listener` - An object to be invoked when a PropertyChange event is fired.

  - ### removePropertyChangeListener

    void removePropertyChangeListener(PropertyChangeListener listener)
    Remove a listener for the PropertyChange event.
    Parameters:
      `listener` - The PropertyChange listener to be removed.