|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.swing.text
类 DefaultFormatter
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
的多个实例中使用。要获得已配置好的 DefaultFormatter
的副本,请使用 clone
方法。
警告:此类的已序列化对象与以后的 Swing 版本不兼容。当前序列化支持适用于短期存储或运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版本开始,已在 java.beans
包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder
。
- 从以下版本开始:
- 1.4
- 另请参见:
JFormattedTextField.AbstractFormatter
构造方法摘要 | |
---|---|
DefaultFormatter() 创建 DefaultFormatter。 |
方法摘要 | |
---|---|
Object |
clone() 创建此 DefaultFormatter 的副本。 |
boolean |
getAllowsInvalid() 返回编辑的值是否在一段时间内允许为无效。 |
boolean |
getCommitsOnValidEdit() 返回何时将编辑内容发布回 JFormattedTextField 。 |
protected DocumentFilter |
getDocumentFilter() 返回用于限制放置到 JFormattedTextField 中的字符的 DocumentFilter 。 |
protected NavigationFilter |
getNavigationFilter() 返回用于限制光标放置位置的 NavigationFilter 。 |
boolean |
getOverwriteMode() 返回插入字符时的行为。 |
Class<?> |
getValueClass() 返回用于创建新 Objects 的类。 |
void |
install(JFormattedTextField ftf) 将 DefaultFormatter 安装到特定的 JFormattedTextField 。 |
void |
setAllowsInvalid(boolean allowsInvalid) 设置编辑的值在一段时间内是否允许为无效(也就是说, stringToValue 是否抛出 ParseException )。 |
void |
setCommitsOnValidEdit(boolean commit) 设置何时将编辑内容发布回 JFormattedTextField 。 |
void |
setOverwriteMode(boolean overwriteMode) 配置插入字符时的行为。 |
void |
setValueClass(Class<?> valueClass) 设置用于创建新 Objects 的类。 |
Object |
stringToValue(String string) 通过使用带 String 参数的构造方法将传入的 String 转换为 getValueClass 的一个实例。 |
String |
valueToString(Object value) 使用 toString 方法将传入的 Object 转换为 String。 |
从类 javax.swing.JFormattedTextField.AbstractFormatter 继承的方法 |
---|
getActions, getFormattedTextField, invalidEdit, setEditValid, uninstall |
从类 java.lang.Object 继承的方法 |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
DefaultFormatter
public DefaultFormatter()
- 创建 DefaultFormatter。
方法详细信息 |
---|
install
public void install(JFormattedTextField ftf)
-
将
DefaultFormatter
安装到特定的JFormattedTextField
。这会调用valueToString
,以便将JFormattedTextField
的当前值转换为 String。此方法稍后将会把getActions
返回的Action
、getDocumentFilter
返回的DocumentFilter
和getNavigationFilter
返回的NavigationFilter
安装到JFormattedTextField
上。如果子类希望在
JFormattedTextField
上安装其他侦听器,则通常只需要重写此方法。如果在将当前值转换为 String 时存在
ParseException
,则这会将文本设置为空 String,并将JFormattedTextField
标记为正处在无效状态。尽管这是一个公共方法,但通常仅供
JFormattedTextField
的子类使用。当值发生更改,或内部状态发生更改时,JFormattedTextField
将在适当的时候调用此方法。 -
- 参数:
ftf
- 要格式化为的 JFormattedTextField,可以为 null,指示未从当前的 JFormattedTextField 安装。
setCommitsOnValidEdit
public void setCommitsOnValidEdit(boolean commit)
-
设置何时将编辑内容发布回
JFormattedTextField
。如果为 true,commitEdit
在每次有效编辑(编辑文本的任何时间)后调用。另一方面,如果为 false,则DefaultFormatter
不会将编辑内容发布回JFormattedTextField
。因此,JFormattedTextField
值的惟一一次改变发生的时间是,在JFormattedTextField
上调用commitEdit
时,通常为按下回车或当焦点离开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