模块 java.desktop

类 PropertyEditorManager

java.lang.Object
java.beans.PropertyEditorManager

public class PropertyEditorManager extends Object
PropertyEditorManager 可用于定位任何给定类型名称的属性编辑器。此属性编辑器必须支持用于编辑给定对象的 java.beans.PropertyEditor 接口。

PropertyEditorManager 使用三种技术来定位给定类型的编辑器。首先,它提供了一个 registerEditor 方法,允许为给定类型专门注册一个编辑器。其次,它尝试通过将“Editor”添加到给定类型的完整限定类名(例如“foo.bah.FozEditor”)来找到合适的类。最后它采用简单的类名(没有包名称)添加“编辑器”并在包的搜索路径中查找匹配的类。

因此,对于输入类 foo.bah.Fred,PropertyEditorManager 将首先查看其表以查看是否已为 foo.bah.Fred 注册了一个编辑器,如果已注册则使用它。然后它会寻找一个 foo.bah.FredEditor 类。然后它将寻找(比如)standardEditorsPackage.FredEditor 类。

将为 Java 基本类型“boolean”、“byte”、“short”、“int”、“long”、“float”和“double”提供默认的 PropertyEditors;和类 java.lang.String。 java.awt.Color 和 java.awt.Font。

自从:
1.1
  • 构造方法详细信息

    • PropertyEditorManager

      public PropertyEditorManager()
      构造一个 PropertyEditorManager
  • 方法详情

    • registerEditor

      public static void registerEditor(Class <?> targetType, Class <?> editorClass)
      注册一个编辑器类来编辑给定目标类的值。如果编辑器类是 null ,那么任何现有的定义都将被删除。因此可以使用此方法取消注册。如果卸载目标或编辑器类,注册将自动取消。

      如果有安全管理器,则调用其checkPropertiesAccess 方法。这可能会导致 SecurityException

      参数:
      targetType - 要编辑的类型的类对象
      editorClass - 编辑器类的类对象
      抛出:
      SecurityException - 如果安全管理器存在且其 checkPropertiesAccess 方法不允许设置系统属性
      参见:
    • findEditor

      public static PropertyEditor  findEditor(Class <?> targetType)
      找到给定目标类型的值编辑器。
      参数:
      targetType - 要编辑的类型的类对象
      返回:
      给定目标类的编辑器对象。如果找不到合适的编辑器,则结果为 null。
    • getEditorSearchPath

      public static String [] getEditorSearchPath()
      获取将为属性编辑器搜索的包名称。
      返回:
      将搜索的包名称数组,以查找属性编辑器。

      该数组的默认值取决于实现,例如 Sun 实现最初设置为 {"sun.beans.editors"}。

    • setEditorSearchPath

      public static void setEditorSearchPath(String [] path)
      更改将用于查找属性编辑器的包名称列表。

      首先,如果有安全管理器,则调用其checkPropertiesAccess 方法。这可能会导致 SecurityException。

      参数:
      path - 包名称数组。
      抛出:
      SecurityException - 如果安全管理器存在且其 checkPropertiesAccess 方法不允许设置系统属性。
      参见: