|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjavax.swing.JFormattedTextField.AbstractFormatter
javax.swing.text.DefaultFormatter
javax.swing.text.InternationalFormatter
javax.swing.text.NumberFormatter
public class NumberFormatter
添加数字特殊行为的 InternationalFormatter 的子类 NumberFormatter。使用的规范(这些规范只在 NumberFormatter 不显示无效数字时使用,如 setAllowsInvalid(false))有:
DecimalFormat 相关的 DecimalFormatSymbols 确定)将试图把数的符号更改为正/负。
DecimalFormat 相关的 DecimalFormatSymbols 确定)将试图把指数符号更改为正/负。
如果要显示特定数字,则可能希望打开改写模式 setOverwriteMode(true)。例如:
DecimalFormat decimalFormat = new DecimalFormat("0.000E0");
NumberFormatter textFormatter = new NumberFormatter(decimalFormat);
textFormatter.setOverwriteMode(true);
textFormatter.setAllowsInvalid(false);
如果打算允许用户输入小数值,则应强制 DecimalFormat 至少包含一个小数 (#.0###),或允许该值无效 setAllowsInvalid(true)。否则,用户可能无法输入小数值。
NumberFormatter 提供的 stringToValue 行为与其超类的这一行为稍有不同。如果已为 DefaultFormatter.setValueClass(java.lang.Class>) 值(也就是 Integer、Long、Float、Double、Byte 或 Short 之一)指定了某个类,并且 Format 的 parseObject 返回一个 Number 的实例,则将使用适合于该值类表示的基本类型的构造方法创建一个该值类的对应实例。例如:setValueClass(Integer.class) 将导致结果值通过 new Integer(((Number)formatter.parseObject(string)).intValue()) 创建。通常,当希望设置最小/最大值时此方法很有用,因为各种 Number 实现一般不相互比较。如果由于某种原因需要某些值的特定 Number 实现,此方法也非常有用。
警告:此类的已序列化对象与以后的 Swing 版本不兼容。当前序列化支持适用于短期存储或运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版本开始,已在 java.beans 包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder。
| 构造方法摘要 | |
|---|---|
NumberFormatter()
创建具有默认 NumberFormat 实例的 NumberFormatter,该实例通过 NumberFormat.getNumberInstance() 获得。 |
|
NumberFormatter(NumberFormat format)
创建具有指定 Format 实例的 NumberFormatter。 |
|
| 方法摘要 | |
|---|---|
void |
setFormat(Format format)
设置指示可以编辑和显示的合法值的格式。 |
| 从类 javax.swing.text.InternationalFormatter 继承的方法 |
|---|
clone, getActions, getFields, getFormat, getMaximum, getMinimum, install, setMaximum, setMinimum, stringToValue, valueToString |
| 从类 javax.swing.JFormattedTextField.AbstractFormatter 继承的方法 |
|---|
getFormattedTextField, invalidEdit, setEditValid, uninstall |
| 从类 java.lang.Object 继承的方法 |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 构造方法详细信息 |
|---|
public NumberFormatter()
NumberFormat 实例的 NumberFormatter,该实例通过 NumberFormat.getNumberInstance() 获得。
public NumberFormatter(NumberFormat format)
format - 用于指示合法值的 Format| 方法详细信息 |
|---|
public void setFormat(Format format)
如果已经使用了默认构造方法,则将通过 NumberFormat.getNumberInstance() 方法为当前语言环境确定此属性值。
InternationalFormatter 中的 setFormatformat - 用于指示合法值的 NumberFormat 实例
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。