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
)。如果找不到更具体的格式化程序,则将使用默认格式化程序。 使用以下过程确定要使用的适当格式化程序。
- 传入值是否为null?使用null格式化程序。
JFormattedTextField
是否具有焦点?使用编辑格式化程序。- 否则,使用显示格式化程序。
- 如果找不到非null的
AbstractFormatter
,则使用默认格式化程序。
以下代码显示了如何配置具有两个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开始,已将所有JavaBeans的长期存储支持添加到java.beans
包中。 请参见XMLEncoder
。
- 自1.4版本起:
- 1.4
- 参见:
-
Constructor Summary
ConstructorDescription构造一个DefaultFormatterFactory
。DefaultFormatterFactory
(JFormattedTextField.AbstractFormatter defaultFormat) 使用指定的JFormattedTextField.AbstractFormatter
创建一个DefaultFormatterFactory
。DefaultFormatterFactory
(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat) 使用指定的JFormattedTextField.AbstractFormatter
创建一个DefaultFormatterFactory
。DefaultFormatterFactory
(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat, JFormattedTextField.AbstractFormatter editFormat) 使用指定的JFormattedTextField.AbstractFormatters
创建一个DefaultFormatterFactory。DefaultFormatterFactory
(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat, JFormattedTextField.AbstractFormatter editFormat, JFormattedTextField.AbstractFormatter nullFormat) 使用指定的JFormattedTextField.AbstractFormatters
创建一个DefaultFormatterFactory。 -
Method Summary
Modifier and TypeMethodDescription返回要用作最后一招的JFormattedTextField.AbstractFormatter
,例如在未指定显示、编辑或null的JFormattedTextField.AbstractFormatter
的情况下。返回要在JFormattedTextField
未被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。返回要在JFormattedTextField
被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。getFormatter
(JFormattedTextField source) 根据JFormattedTextField的状态返回默认格式化程序、显示格式化程序、编辑器格式化程序或null格式化程序。返回如果值为null时要使用的格式化程序。void
设置要用作最后一招的JFormattedTextField.AbstractFormatter
,例如在未指定显示、编辑或null的JFormattedTextField.AbstractFormatter
的情况下。void
设置要在JFormattedTextField
未被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。void
设置要在JFormattedTextField
被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。void
设置当JFormattedTextField的值为null时要使用的格式化程序。
-
Constructor Details
-
DefaultFormatterFactory
public DefaultFormatterFactory()构造一个DefaultFormatterFactory
。 -
DefaultFormatterFactory
使用指定的JFormattedTextField.AbstractFormatter
创建一个DefaultFormatterFactory
。- 参数:
-
defaultFormat
- 如果找不到更具体的JFormattedTextField.AbstractFormatter,则要使用的JFormattedTextField.AbstractFormatter。
-
DefaultFormatterFactory
public DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat) 使用指定的JFormattedTextField.AbstractFormatter
创建一个DefaultFormatterFactory
。- 参数:
-
defaultFormat
- 如果找不到更具体的JFormattedTextField.AbstractFormatter,则要使用的JFormattedTextField.AbstractFormatter。 -
displayFormat
- 当JFormattedTextField没有焦点时要使用的JFormattedTextField.AbstractFormatter。
-
DefaultFormatterFactory
public DefaultFormatterFactory(JFormattedTextField.AbstractFormatter defaultFormat, JFormattedTextField.AbstractFormatter displayFormat, JFormattedTextField.AbstractFormatter editFormat) 使用指定的JFormattedTextField.AbstractFormatters
创建一个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.AbstractFormatters
创建一个DefaultFormatterFactory。- 参数:
-
defaultFormat
- 如果找不到更具体的JFormattedTextField.AbstractFormatter,则要使用的JFormattedTextField.AbstractFormatter。 -
displayFormat
- 当JFormattedTextField没有焦点时要使用的JFormattedTextField.AbstractFormatter。 -
editFormat
- 当JFormattedTextField具有焦点时要使用的JFormattedTextField.AbstractFormatter。 -
nullFormat
- 当JFormattedTextField的值为null时要使用的JFormattedTextField.AbstractFormatter。
-
-
Method Details
-
setDefaultFormatter
设置要用作最后一招的JFormattedTextField.AbstractFormatter
,例如在未指定显示、编辑或null的JFormattedTextField.AbstractFormatter
的情况下。- 参数:
-
atf
- 如果未指定更具体的格式化程序,则使用的JFormattedTextField.AbstractFormatter
-
getDefaultFormatter
返回要用作最后一招的JFormattedTextField.AbstractFormatter
,例如在未指定显示、编辑或null的JFormattedTextField.AbstractFormatter
的情况下。- 返回:
- 如果未指定更具体的格式化程序,则使用的JFormattedTextField.AbstractFormatter。
-
setDisplayFormatter
设置要在JFormattedTextField
未被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。- 参数:
-
atf
- 当JFormattedTextField没有焦点时使用的JFormattedTextField.AbstractFormatter
-
getDisplayFormatter
返回要在JFormattedTextField
未被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。- 返回:
- 当JFormattedTextField没有焦点时使用的JFormattedTextField.AbstractFormatter
-
setEditFormatter
设置要在JFormattedTextField
被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。- 参数:
-
atf
- 当组件具有焦点时使用的JFormattedTextField.AbstractFormatter
-
getEditFormatter
返回要在JFormattedTextField
被编辑且值不为null,或者值为null且未指定null格式化程序时使用的JFormattedTextField.AbstractFormatter
。- 返回:
- 当组件具有焦点时使用的JFormattedTextField.AbstractFormatter
-
setNullFormatter
设置当JFormattedTextField的值为null时要使用的格式化程序。- 参数:
-
atf
- 当JFormattedTextField的值为null时使用的JFormattedTextField.AbstractFormatter。
-
getNullFormatter
返回如果值为null时要使用的格式化程序。- 返回:
- 当值为null时使用的JFormattedTextField.AbstractFormatter
-
getFormatter
根据JFormattedTextField的状态返回默认格式化程序、显示格式化程序、编辑器格式化程序或null格式化程序。- 指定者:
-
getFormatter
在类JFormattedTextField.AbstractFormatterFactory
- 参数:
-
source
- 请求JFormattedTextField.AbstractFormatter的JFormattedTextField - 返回:
- 用于处理格式化任务的JFormattedTextField.AbstractFormatter。
-