- java.lang.Object
 -  
      
- javax.swing.JFormattedTextField.AbstractFormatter
 -  
        
- javax.swing.text.DefaultFormatter
 
 
 
-  
       
- 实现的所有接口
 -  
         
Serializable,Cloneable 
- 已知直接子类:
 -  
         
InternationalFormatter,MaskFormatter 
public class DefaultFormatter extends JFormattedTextField.AbstractFormatter implements Cloneable, Serializable
DefaultFormatter格式化任意对象。 通过调用toString方法完成格式化。 为了将值转换回String,您的类必须提供一个带String参数的构造函数。 如果找不到带有String的单个参数构造函数,则返回的值将是传递给stringToValue的String。实例
DefaultFormatter不能在JFormattedTextField多个实例中JFormattedTextField。 要获取已配置的DefaultFormatter的副本,请使用clone方法。警告:此类的序列化对象与以后的Swing版本不兼容。 当前的序列化支持适用于运行相同版本Swing的应用程序之间的短期存储或RMI。 从1.4开始,
java.beans软件包中添加了对所有JavaBeansjava.beans长期存储的支持。 请参阅XMLEncoder。- 从以下版本开始:
 - 1.4
 - 另请参见:
 -  
         
JFormattedTextField.AbstractFormatter, Serialized Form 
 
-  
        
       
-  
             
构造方法摘要
构造方法 构造器 描述 DefaultFormatter()创建DefaultFormatter。 
-  
             
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 Objectclone()创建DefaultFormatter的副本。booleangetAllowsInvalid()返回被编辑的值是否允许在一段时间内无效。booleangetCommitsOnValidEdit()编辑返回到JFormattedTextField时返回。protected DocumentFiltergetDocumentFilter()返回DocumentFilter用于限制,可以是输入到字符JFormattedTextField。protected NavigationFiltergetNavigationFilter()返回用于限制光标放置位置的NavigationFilter。booleangetOverwriteMode()返回插入字符时的行为。类<?>getValueClass()返回用于创建新对象的类。voidinstall(JFormattedTextField ftf)将DefaultFormatter安装到特定的JFormattedTextField。voidsetAllowsInvalid(boolean allowsInvalid)设置是否允许正在编辑的值在一段时间内无效(即stringToValue抛出ParseException)。voidsetCommitsOnValidEdit(boolean commit)设置何时将编辑内容发布回JFormattedTextField。voidsetOverwriteMode(boolean overwriteMode)配置插入字符时的行为。voidsetValueClass(类<?> valueClass)设置用于创建新对象的类。ObjectstringToValue(String string)通过带有String参数的构造函数将传入的String转换为getValueClass的实例。StringvalueToString(Object value)通过toString方法将传入的Object转换为String。-  
               
声明方法的类 javax.swing.JFormattedTextField.AbstractFormatter
getActions, getFormattedTextField, invalidEdit, setEditValid, uninstall 
 -  
               
 
 -  
             
 
-  
        
       
-  
             
方法详细信息
-  
install
public void install(JFormattedTextField ftf)
将DefaultFormatter安装到特定的JFormattedTextField。 这将调用valueToString将当前值从JFormattedTextField转换为String。 那么这将安装Action从sgetActions,该DocumentFilter从返回getDocumentFilter和NavigationFilter从返回getNavigationFilter至JFormattedTextField。如果子类希望在
JFormattedTextField上安装其他侦听器,则通常只需要覆盖它。如果在将当前值转换为String时存在
ParseException,则会将文本设置为空字符串,并将JFormattedTextField标记为处于无效状态。虽然这是一种公共方法,但这通常仅适用于
JFormattedTextField子类。JFormattedTextField将在值更改或其内部状态更改的适当时间调用此方法。- 重写:
 -  
              
install在类JFormattedTextField.AbstractFormatter - 参数
 -  
              
ftf- 要格式化的JFormattedTextField,可以为null,表示从当前JFormattedTextField卸载。 
 
-  
setCommitsOnValidEdit
public void setCommitsOnValidEdit(boolean commit)
设置何时将编辑内容发布回JFormattedTextField。 如果为true,则在每次有效编辑后调用commitEdit(任何时候编辑文本)。 另一方面,如果这是假的,则DefaultFormatter不会将编辑发布回JFormattedTextField。 因此,JFormattedTextField的值将更改的唯一时间是在commitEdit上调用JFormattedTextField,通常在按下enter或焦点离开JFormattedTextField。- 参数
 -  
              
commit- 用于指示何时将编辑提交回JTextComponent 
 
-  
getCommitsOnValidEdit
public boolean getCommitsOnValidEdit()
将编辑内容发布回JFormattedTextField时返回。- 结果
 - 如果在每次有效编辑后提交编辑,则为true
 
 
-  
setOverwriteMode
public void setOverwriteMode(boolean overwriteMode)
配置插入字符时的行为。 如果overwriteMode为true(默认值),则新字符将覆盖模型中的现有字符。- 参数
 -  
              
overwriteMode- 指示是否使用覆盖或重写模式 
 
-  
getOverwriteMode
public boolean getOverwriteMode()
返回插入字符时的行为。- 结果
 - 如果新插入的字符覆盖现有字符,则为true
 
 
-  
setAllowsInvalid
public void setAllowsInvalid(boolean allowsInvalid)
设置被编辑的值是否允许在一段时间内无效(即stringToValue抛出ParseException)。 允许用户临时输入无效值通常很方便。- 参数
 -  
              
allowsInvalid- 用于指示编辑的值是否必须始终有效 
 
-  
getAllowsInvalid
public boolean getAllowsInvalid()
返回被编辑的值是否允许在一段时间内无效。- 结果
 - 如果编辑的值必须始终有效,则为false
 
 
-  
setValueClass
public void setValueClass(类<?> valueClass)
设置用于创建新对象的类。 如果传入的类没有带有String的单个参数构造函数,则将使用String值。- 参数
 -  
              
valueClass- 用于从stringToValue构造返回值的类 
 
-  
getValueClass
public 类<?> getValueClass()
返回用于创建新对象的类。- 结果
 - 用于从stringToValue构造返回值的类
 
 
-  
stringToValue
public Object stringToValue(String string) throws ParseException
通过带有String参数的构造函数将传入的String转换为getValueClass的实例。 如果getValueClass返回null,则将使用JFormattedTextField当前值的Class。 如果为null,则返回String。 如果构造函数抛出异常,则抛出ParseException。 如果没有单个参数String构造函数,则将返回string。- Specified by:
 -  
              
stringToValue类JFormattedTextField.AbstractFormatter - 参数
 -  
              
string- 要转换的字符串 - 结果
 - 文本的对象表示
 - 异常
 -  
              
ParseException- 如果转换中存在错误 
 
-  
valueToString
public String valueToString(Object value) throws ParseException
通过toString方法将传入的Object转换为String。- Specified by:
 -  
              
valueToString在课程JFormattedTextField.AbstractFormatter - 参数
 -  
              
value- 要转换的值 - 结果
 - 字符串表示的值
 - 异常
 -  
              
ParseException- 如果转换中存在错误 
 
-  
getDocumentFilter
protected DocumentFilter getDocumentFilter()
返回DocumentFilter用于限制,可以是输入到字符JFormattedTextField。- 重写:
 -  
              
getDocumentFilter在类JFormattedTextField.AbstractFormatter - 结果
 - DocumentFilter限制编辑
 
 
-  
getNavigationFilter
protected NavigationFilter getNavigationFilter()
返回用于限制光标放置位置的NavigationFilter。- 重写:
 -  
              
getNavigationFilter在类JFormattedTextField.AbstractFormatter - 结果
 - NavigationFilter限制导航
 
 
-  
clone
public Object clone() throws CloneNotSupportedException
创建DefaultFormatter的副本。- 重写:
 -  
              
clone在类JFormattedTextField.AbstractFormatter - 结果
 - DefaultFormatter的副本
 - 异常
 -  
              
CloneNotSupportedException- 如果对象的类不支持Cloneable接口。 重写clone方法的子类也可以抛出此异常以指示无法克隆实例。 - 另请参见:
 -  
              
Cloneable 
 
 -  
 
 -