| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjavax.swing.AbstractSpinnerModel
javax.swing.SpinnerNumberModel
public class SpinnerNumberModel
      用于数字序列的 SpinnerModel。该序列的上下边界由名为 minimum 和 maximum 的属性定义。nextValue 和 previousValue 方法计算的增加或减少的大小由名为 stepSize 的属性定义。该 minimum 和 maximum 属性可以为 null,指示该序列没有下限和上限。此类中的所有属性都根据以下两个一般类型定义:Number 和 Comparable,以便适应所有 Java 数字类型。在内部,仅支持其类型为以下某个基本 Number 类型的值:Double、Float、Long、Integer、Short 或 Byte。 
 要创建从 0 到 100 整数范围(初始值为 50)的 SpinnerNumberModel,可以写入: 
Integer value = new Integer(50); Integer min = new Integer(0); Integer max = new Integer(100); Integer step = new Integer(1); SpinnerNumberModel model = new SpinnerNumberModel(value, min, max, step); int fifty = model.getNumber().intValue();
Integer 和 double 的 spinner 是很常见的,因此提供了针对这些情况的特殊构造方法。例如,要创建前一示例中的模式,也可以写入:
SpinnerNumberModel model = new SpinnerNumberModel(50, 0, 100, 1);
 此模式继承的是一个 ChangeListener。每当该模式的 value、stepSize、minimum 或 maximum 属性发生变化时,就会通知该 ChangeListeners。 
JSpinner, 
    SpinnerModel, 
    AbstractSpinnerModel, 
    SpinnerListModel, 
    SpinnerDateModel
   | 字段摘要 | 
|---|
| 从类 javax.swing.AbstractSpinnerModel 继承的字段 | 
|---|
| listenerList | 
| 构造方法摘要 | |
|---|---|
| SpinnerNumberModel()构造一个没有 minimum或maximum值、stepSize等于 1 且初始值为零的SpinnerNumberModel。 | |
| SpinnerNumberModel(double value, double minimum, double maximum, double stepSize)构造一个具有指定 value、minimum/maximum边界和stepSize的SpinnerNumberModel。 | |
| SpinnerNumberModel(int value, int minimum, int maximum, int stepSize)构造一个具有指定 value、minimum/maximum边界和stepSize的SpinnerNumberModel。 | |
| SpinnerNumberModel(Number value, Comparable minimum, Comparable maximum, Number stepSize)构造一个表示从 minimum到maximum的闭区间数字序列的SpinnerModel。 | |
| 方法摘要 | |
|---|---|
|  Comparable | getMaximum()返回该序列中的最后一个数字。 | 
|  Comparable | getMinimum()返回此序列中的第一个数字。 | 
|  Object | getNextValue()返回该序列中的下一个数字。 | 
|  Number | getNumber()返回该序列的当前元素的值。 | 
|  Object | getPreviousValue()返回该序列中的上一个数字。 | 
|  Number | getStepSize()返回由 getNextValue和getPreviousValue方法计算的值更改的大小。 | 
|  Object | getValue()返回该序列的当前元素的值。 | 
|  void | setMaximum(Comparable maximum)更改此序列中数字的上边界。 | 
|  void | setMinimum(Comparable minimum)更改此序列中数字的下边界。 | 
|  void | setStepSize(Number stepSize)更改由 getNextValue和getPreviousValue方法计算的值更改的大小。 | 
|  void | setValue(Object value)设置此序列的当前元素。 | 
| 从类 javax.swing.AbstractSpinnerModel 继承的方法 | 
|---|
| addChangeListener, fireStateChanged, getChangeListeners, getListeners, removeChangeListener | 
| 从类 java.lang.Object 继承的方法 | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| 构造方法详细信息 | 
|---|
public SpinnerNumberModel(Number value,
                          Comparable minimum,
                          Comparable maximum,
                          Number stepSize) 
  minimum 到 
    maximum 的闭区间数字序列的 
    SpinnerModel。
    nextValue 和 
    previousValue 方法通过分别添加或减去 
    stepSize 计算该序列的元素。所有参数必须是相互 
    Comparable 的,
    value 和 
    stepSize 必须是 
    Integer 
    Long、
    Float 或 
    Double 的实例。 
     该 minimum 和 maximum 参数可以为 null,指示该范围没有上下边界。如果 value 或 stepSize 为 null,或者 minimum 和 maximum 两者都是指定值,且 mininum > maximum,则抛出一个 IllegalArgumentException。同样,如果 (minimum <= value <= maximum) 为 false,则抛出一个 IllegalArgumentException。 
value - 该模式的当前(非 
      null)值
     minimum - 该序列中第一个数或 
      null
     maximum - 该序列中的最后一个数或 
      null
     stepSize - 该序列中元素之间的区别 
     IllegalArgumentException - 如果 stepSize 或值为 
      null,或者以下表达式为 false:
      minimum <= value <= maximum
     
public SpinnerNumberModel(int value,
                          int minimum,
                          int maximum,
                          int stepSize) 
  value、
    minimum/
    maximum 边界和 
    stepSize 的 
    SpinnerNumberModel。 
    
value - 该模式的当前值
     minimum - 该序列中的第一个数
     maximum - 该序列中的最后一个数
     stepSize - 该序列中元素之间的区别 
     IllegalArgumentException - 如果以下表达式为 false:
      minimum <= value <= maximum
     
public SpinnerNumberModel(double value,
                          double minimum,
                          double maximum,
                          double stepSize) 
  value、
    minimum/
    maximum 边界和 
    stepSize 的 
    SpinnerNumberModel。 
    
value - 该模式的当前值
     minimum - 该序列中的第一个数
     maximum - 该序列中的最后一个数
     stepSize - 该序列中元素之间的区别 
     IllegalArgumentException - 如果以下表达式为 false:
      minimum <= value <= maximum
     public SpinnerNumberModel()
minimum 或 
    maximum 值、
    stepSize 等于 1 且初始值为零的 
    SpinnerNumberModel。 
    
| 方法详细信息 | 
|---|
public void setMinimum(Comparable minimum)
minimum 为 
    null,则不存在下边界。此处不进行边界检查;新 
    minimum 值可能会使该构造方法强制执行的 
    (minimum <= value <= maximum) 等式失效。这样可以简化更新该模式,调用 
    getNextValue、
    getPreviousValue 或 
    setValue 方法之前自然应该确保该等式为 true。 
     通常,此属性是一个与 value 同一类型的 Number,但是,与该值同一类型 Number 可以使用具有 compareTo 方法的任何 Comparable。例如,如果值为 Long,则 minimum 可能是一个这样定义的 Date 子类: 
 MyDate extends Date {  // Date already implements Comparable
     public int compareTo(Long o) {
         long t = getTime();
         return (t < o.longValue() ? -1 : (t == o.longValue() ? 0 : 1));
     }
 }
  
     如果 minimum 已经更改,则此方法会激发一个 ChangeEvent。 
minimum - 一个 
      Comparable,它具有与 
      value 同一类型的 
      Number 的 
      compareTo 方法
     getMinimum(), 
      setMaximum(java.lang.Comparable), 
      SpinnerModel.addChangeListener(javax.swing.event.ChangeListener)
     public Comparable getMinimum()
minimum 属性的值
     setMinimum(java.lang.Comparable)
     public void setMaximum(Comparable maximum)
maximum 为 
    null,则不存在上边界。此处不进行边界检查;新 
    maximum 值可能会使该构造方法强制执行的 
    (minimum <= value < maximum) 等式失效。这样可以简化更新该模式,调用 
    next、
    previous 或 
    setValue 方法之前自然应该确保该等式为 true。 
     通常,此属性是一个与 value 同一类型的 Number,但是,与该值同一类型 Number 可以使用具有 compareTo 方法的任何 Comparable。有关示例,请参阅 setMinimum。 
 如果 maximum 已经更改,则此方法会激发一个 ChangeEvent。 
maximum - 一个 
      Comparable,它具有与 
      value 同一类型的 
      Number 的 
      compareTo 方法
     setMinimum(java.lang.Comparable), 
      SpinnerModel.addChangeListener(javax.swing.event.ChangeListener)
     public Comparable getMaximum()
maximum 属性的值
     setMaximum(java.lang.Comparable)
     public void setStepSize(Number stepSize)
getNextValue 和 
    getPreviousValue 方法计算的值更改的大小。如果 
    stepSize 为 
    null,则抛出一个 
    IllegalArgumentException。 
     如果 stepSize 已经更改,则此方法会激发一个 ChangeEvent。 
stepSize - 由 
      getNextValue 和 
      getPreviousValue 方法计算的值更改的大小
     getNextValue(), 
      getPreviousValue(), 
      getStepSize(), 
      SpinnerModel.addChangeListener(javax.swing.event.ChangeListener)
     public Number getStepSize()
getNextValue 和 
    getPreviousValue 方法计算的值更改的大小。 
    
stepSize 属性的值
     setStepSize(java.lang.Number)
     public Object getNextValue()
SpinnerModel 中的 
      getNextValue
     value + stepSize,如果和超过 
      maximum,则返回 
      null。
     SpinnerModel.getNextValue(), 
      getPreviousValue(), 
      setStepSize(java.lang.Number)
     public Object getPreviousValue()
SpinnerModel 中的 
      getPreviousValue
     value - stepSize,如果和小于 
      minimum,则返回 
      null。
     SpinnerModel.getPreviousValue(), 
      getNextValue(), 
      setStepSize(java.lang.Number)
     public Number getNumber()
setValue(java.lang.Object)
     public Object getValue()
SpinnerModel 中的 
      getValue
     setValue(java.lang.Object), 
      getNumber()
     public void setValue(Object value)
value 为 
    null,或不为 
    Number,则抛出一个 
    IllegalArgumentException。此处不进行边界检查;新值可能会使该构造方法强制执行的 
    (minimum <= value <= maximum) 等式失效。还可以将该值设置为不会在该序列中自然出现的值,即一个不以 
    stepSize 为模的值。这样做是为了简化更新该模式,也是为了适应不希望限制由用户直接输入的值的 spinner。很自然,调用 
    next、
    previous 或 
    setValue 方法之前应该确保 
    (minimum <= value <= maximum) 等式为 true。 
     如果该值已更改,则此方法会激发一个 ChangeEvent。 
SpinnerModel 中的 
      setValue
     value - 此序列的当前(非 
      null)
      Number 
     IllegalArgumentException - 如果 
      value 为 
      null 或不为 
      Number
     getNumber(), 
      getValue(), 
      SpinnerModel.addChangeListener(javax.swing.event.ChangeListener)
     | 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。