Module java.desktop
Package java.beans

Class PropertyEditorSupport

java.lang.Object
java.beans.PropertyEditorSupport
所有已实现的接口:
PropertyEditor

public class PropertyEditorSupport extends Object implements PropertyEditor
这是一个支持类,用于帮助构建属性编辑器。

它可以被用作基类或委托。

自:
1.1
  • Constructor Details

    • PropertyEditorSupport

      public PropertyEditorSupport()
      构造一个PropertyEditorSupport对象。
      自:
      1.5
    • PropertyEditorSupport

      public PropertyEditorSupport(Object source)
      构造一个PropertyEditorSupport对象。
      参数:
      source - 用于事件触发的源
      自:
      1.5
  • Method Details

    • getSource

      public Object getSource()
      返回用作事件源的bean。如果源未明确设置,则返回此PropertyEditorSupport实例。
      返回:
      源对象或此实例
      自:
      1.5
    • setSource

      public void setSource(Object source)
      设置源bean。

      源bean用作属性更改的事件源。此源仅用于信息目的,不应由PropertyEditor修改。

      参数:
      source - 用于事件的源对象
      自:
      1.5
    • setValue

      public void setValue(Object value)
      设置(或更改)要编辑的对象。
      指定者:
      setValue 在接口 PropertyEditor
      参数:
      value - 要编辑的新目标对象。请注意,PropertyEditor不应修改此对象,而应创建一个新对象来保存任何修改后的值。
    • getValue

      public Object getValue()
      获取属性的值。
      指定者:
      getValue 在接口 PropertyEditor
      返回:
      属性的值。
    • isPaintable

      public boolean isPaintable()
      确定类是否会遵守paintValue方法。
      指定者:
      isPaintable 在接口 PropertyEditor
      返回:
      如果类将遵守paintValue方法,则为True。
    • paintValue

      public void paintValue(Graphics gfx, Rectangle box)
      在屏幕空间的给定区域中绘制值的表示。请注意,PropertyEditor负责执行自己的裁剪,以使其适合给定的矩形。

      如果PropertyEditor不支持绘制请求(请参见isPaintable),则此方法应为静默的空操作。

      指定者:
      paintValue 在接口 PropertyEditor
      参数:
      gfx - 要绘制的Graphics对象。
      box - 要绘制到其中的矩形内的矩形。
    • getJavaInitializationString

      public String getJavaInitializationString()
      此方法用于生成Java代码以设置属性值。它应返回一段可以用于使用当前属性值初始化变量的Java代码片段。

      示例结果为"2","new Color(127,127,34)","Color.orange"等。

      指定者:
      getJavaInitializationString 在接口 PropertyEditor
      返回:
      代表当前值的初始化器的Java代码片段。
    • getAsText

      public String getAsText()
      获取属性值作为适合呈现给人类编辑的字符串。
      指定者:
      getAsText 在接口 PropertyEditor
      返回:
      作为适合呈现给人类编辑的字符串的属性值。

      如果值无法表示为字符串,则返回null。

      如果返回非null值,则PropertyEditor应准备解析该字符串以在setAsText()中设置值。

    • setAsText

      public void setAsText(String text) throws IllegalArgumentException
      通过解析给定的字符串设置属性值。如果字符串格式不正确或此类属性无法表示为文本,则可能引发java.lang.IllegalArgumentException。
      指定者:
      setAsText 在接口 PropertyEditor
      参数:
      text - 要解析的字符串。
      抛出:
      IllegalArgumentException
    • getTags

      public String[] getTags()
      如果属性值必须是一组已知标记值之一,则此方法应返回标记值的数组。这可用于表示(例如)枚举值。如果PropertyEditor支持标记,则应支持使用标记值的setAsText作为设置值的一种方式。
      指定者:
      getTags 在接口 PropertyEditor
      返回:
      此属性的标记值。如果此属性无法表示为标记值,则可能为null。
    • getCustomEditor

      public Component getCustomEditor()
      PropertyEditor可以选择提供一个完整的自定义组件来编辑其属性值。PropertyEditor有责任将自己连接到其编辑器组件,并通过触发PropertyChange事件来报告属性值更改。

      调用getCustomEditor的高级代码可以将组件嵌入到某个更大的属性表中,或者可以将其放在自己的单独对话框中,等等...

      指定者:
      getCustomEditor 在接口 PropertyEditor
      返回:
      一个java.awt.Component,允许人类直接编辑当前属性值。如果不支持此操作,则可能为null。
    • supportsCustomEditor

      public boolean supportsCustomEditor()
      确定PropertyEditor是否可以提供自定义编辑器。
      指定者:
      supportsCustomEditor 在接口 PropertyEditor
      返回:
      如果PropertyEditor可以提供自定义编辑器,则为True。
    • addPropertyChangeListener

      public void addPropertyChangeListener(PropertyChangeListener listener)
      添加一个值更改的监听器。当属性编辑器更改其值时,应在所有已注册的PropertyChangeListener上触发一个PropertyChangeEvent,指定属性名称为null的值。如果设置了源属性,则应将其用作事件的源。

      同一个监听器对象可以添加多次,并且每次添加都将调用。如果listenernull,则不会抛出异常,也不会执行任何操作。

      指定者:
      addPropertyChangeListener 在接口 PropertyEditor
      参数:
      listener - 要添加的PropertyChangeListener
    • removePropertyChangeListener

      public void removePropertyChangeListener(PropertyChangeListener listener)
      删除值更改的监听器。

      如果同一个监听器添加了多次,则在移除后将少通知一次。如果listenernull,或者从未添加过,则不会抛出异常,也不会执行任何操作。

      指定者:
      removePropertyChangeListener 在接口 PropertyEditor
      参数:
      listener - 要移除的PropertyChangeListener
    • firePropertyChange

      public void firePropertyChange()
      向任何感兴趣的监听器报告我们已被修改。