JavaTM Platform
Standard Ed. 6

javax.swing.text
类 DefaultFormatterFactory

java.lang.Object
  继承者 javax.swing.JFormattedTextField.AbstractFormatterFactory
      继承者 javax.swing.text.DefaultFormatterFactory
所有已实现的接口:
Serializable

public class DefaultFormatterFactory
extends JFormattedTextField.AbstractFormatterFactory
implements Serializable

JFormattedTextField.AbstractFormatterFactory 的一个实现。DefaultFormatterFactory 允许指定许多不同的 JFormattedTextField.AbstractFormatter 以供使用。最重要的一个为默认 (setDefaultFormatter)。如果无法找到更专用的 formatter,则使用默认的 formatter。下面的步骤用于确定要使用的适当 formatter。

  1. 传入的值是否为 null?使用 null formatter。
  2. JFormattedTextField 有焦点吗?使用编辑 formatter。
  3. 否则,使用显示 formatter。
  4. 如果未发现非 null AbstractFormatter,则使用默认 formatter。

下列代码显示如何用两个 JFormattedTextField.AbstractFormatter 配置 JFormattedTextField,一个用于显示,一个用于编辑。

 JFormattedTextField.AbstractFormatter editFormatter = ...;
 JFormattedTextField.AbstractFormatter displayFormatter = ...;
 DefaultFormatterFactory factory = new DefaultFormatterFactory(
                 displayFormatter, displayFormatter, editFormatter);
 JFormattedTextField tf = new JFormattedTextField(factory);
 

警告:此类的已序列化对象与以后的 Swing 版本不兼容。当前序列化支持适用于短期存储或运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版本开始,已在 java.beans 包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder

从以下版本开始:
1.4
另请参见:
JFormattedTextField

构造方法摘要
DefaultFormatterFactory()
           
DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat)
          创建具有指定 JFormattedTextField.AbstractFormatterDefaultFormatterFactory
DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat)
          创建具有指定 JFormattedTextField.AbstractFormatterDefaultFormatterFactory
DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat, JFormattedTextField.AbstractFormatter editFormat)
          创建具有指定 JFormattedTextField.AbstractFormatter 的 DefaultFormatterFactory。
DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat, JFormattedTextField.AbstractFormatter editFormat, JFormattedTextField.AbstractFormatter nullFormat)
          创建具有指定 JFormattedTextField.AbstractFormatter 的 DefaultFormatterFactory。
 
方法摘要
 JFormattedTextField.AbstractFormatter getDefaultFormatter()
          返回供最后选择使用的 JFormattedTextField.AbstractFormatter,例如,未指定任何显示、编辑或 null JFormattedTextField.AbstractFormatter
 JFormattedTextField.AbstractFormatter getDisplayFormatter()
          返回在不编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter
 JFormattedTextField.AbstractFormatter getEditFormatter()
          返回在编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter
 JFormattedTextField.AbstractFormatter getFormatter(JFormattedTextField source)
          根据 JFormattedTextField 的状态返回默认的 formatter、显示 formatter、编辑器 formatter 或 null formatter。
 JFormattedTextField.AbstractFormatter getNullFormatter()
          返回值为 null 时使用的 formatter。
 void setDefaultFormatter(JFormattedTextField.AbstractFormatter atf)
          设置 JFormattedTextField.AbstractFormatter 供最后选择使用,例如,未指定任何显示、编辑或 null JFormattedTextField.AbstractFormatter
 void setDisplayFormatter(JFormattedTextField.AbstractFormatter atf)
          设置在不编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter
 void setEditFormatter(JFormattedTextField.AbstractFormatter atf)
          设置在编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter
 void setNullFormatter(JFormattedTextField.AbstractFormatter atf)
          设置在 JFormattedTextField 值为 null 时使用的 formatter。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

DefaultFormatterFactory

public DefaultFormatterFactory()

DefaultFormatterFactory

public DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat)
创建具有指定 JFormattedTextField.AbstractFormatterDefaultFormatterFactory

参数:
defaultFormat - 在未发现更专用的 JFormattedTextField.AbstractFormatter 时使用的 JFormattedTextField.AbstractFormatter。

DefaultFormatterFactory

public DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat,
                               JFormattedTextField.AbstractFormatter displayFormat)
创建具有指定 JFormattedTextField.AbstractFormatterDefaultFormatterFactory

参数:
defaultFormat - 在未发现更专用的 JFormattedTextField.AbstractFormatter 时使用的 JFormattedTextField.AbstractFormatter。
displayFormat - 在 JFormattedTextField 没有焦点时使用的 JFormattedTextField.AbstractFormatter。

DefaultFormatterFactory

public DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat,
                               JFormattedTextField.AbstractFormatter displayFormat,
                               JFormattedTextField.AbstractFormatter editFormat)
创建具有指定 JFormattedTextField.AbstractFormatter 的 DefaultFormatterFactory。

参数:
defaultFormat - 在未发现更专用的 JFormattedTextField.AbstractFormatter 时使用的 JFormattedTextField.AbstractFormatter。
displayFormat - 在 JFormattedTextField 没有焦点时使用的 JFormattedTextField.AbstractFormatter。
editFormat - 在 JFormattedTextField 拥有焦点时使用的 JFormattedTextField.AbstractFormatter。

DefaultFormatterFactory

public DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat,
                               JFormattedTextField.AbstractFormatter displayFormat,
                               JFormattedTextField.AbstractFormatter editFormat,
                               JFormattedTextField.AbstractFormatter nullFormat)
创建具有指定 JFormattedTextField.AbstractFormatter 的 DefaultFormatterFactory。

参数:
defaultFormat - 在未发现更专用的 JFormattedTextField.AbstractFormatter 时使用的 JFormattedTextField.AbstractFormatter。
displayFormat - 在 JFormattedTextField 没有焦点时使用的 JFormattedTextField.AbstractFormatter。
editFormat - 在 JFormattedTextField 拥有焦点时使用的 JFormattedTextField.AbstractFormatter。
nullFormat - JFormattedTextField 为 null 值时使用的 JFormattedTextField.AbstractFormatter。
方法详细信息

setDefaultFormatter

public void setDefaultFormatter(JFormattedTextField.AbstractFormatter atf)
设置 JFormattedTextField.AbstractFormatter 供最后选择使用,例如,未指定任何显示、编辑或 null JFormattedTextField.AbstractFormatter

参数:
atf - 未指定更专用值的情况下使用的 JFormattedTextField.AbstractFormatter

getDefaultFormatter

public JFormattedTextField.AbstractFormatter getDefaultFormatter()
返回供最后选择使用的 JFormattedTextField.AbstractFormatter,例如,未指定任何显示、编辑或 null JFormattedTextField.AbstractFormatter

返回:
未指定更专用值的情况下使用的 JFormattedTextField.AbstractFormatter。

setDisplayFormatter

public void setDisplayFormatter(JFormattedTextField.AbstractFormatter atf)
设置在不编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter

参数:
atf - 在 JFormattedTextField 没有焦点时使用的 JFormattedTextField.AbstractFormatter

getDisplayFormatter

public JFormattedTextField.AbstractFormatter getDisplayFormatter()
返回在不编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter

返回:
在 JFormattedTextField does 没有焦点时使用的 JFormattedTextField.AbstractFormatter

setEditFormatter

public void setEditFormatter(JFormattedTextField.AbstractFormatter atf)
设置在编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter

参数:
atf - 在组件拥有焦点时使用的 JFormattedTextField.AbstractFormatter

getEditFormatter

public JFormattedTextField.AbstractFormatter getEditFormatter()
返回在编辑 JFormattedTextField 并且值为非 null 或值虽然为 null 但是未指定 null formatter 的情况下使用的 JFormattedTextField.AbstractFormatter

返回:
在组件拥有焦点时使用的 JFormattedTextField.AbstractFormatter

setNullFormatter

public void setNullFormatter(JFormattedTextField.AbstractFormatter atf)
设置在 JFormattedTextField 值为 null 时使用的 formatter。

参数:
atf - 在 JFormattedTextField 值为 null 时使用的 JFormattedTextField.AbstractFormatter。

getNullFormatter

public JFormattedTextField.AbstractFormatter getNullFormatter()
返回值为 null 时使用的 formatter。

返回:
值为 null 时使用的 JFormattedTextField.AbstractFormatter

getFormatter

public JFormattedTextField.AbstractFormatter getFormatter(JFormattedTextField source)
根据 JFormattedTextField 的状态返回默认的 formatter、显示 formatter、编辑器 formatter 或 null formatter。

指定者:
JFormattedTextField.AbstractFormatterFactory 中的 getFormatter
参数:
source - 请求 JFormattedTextField.AbstractFormatter 的 JFormattedTextField
返回:
处理格式任务的 JFormattedTextField.AbstractFormatter。

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策