当数值步进器的值超出范围时显示错误

时间:2017-02-24 03:06:31

标签: actionscript-3 flex

当我为数字步进器设置最大值和最小值时,我仍然可以输入该范围之外的数字。但如果我输入的数字大于此值,它会自动收到最大值。如何在这种情况下显示错误,但仍保持设置的最大值和最小值?

1 个答案:

答案 0 :(得分:2)

嗯,一种直观的方法来检查输入的值与最大NumericStepper组件的最小值之间的值 - 当它仍然被输入时,要在NumericStepper实例的KEY_UP属性上收听textField的键盘事件:

import fl.controls.NumericStepper;
import flash.events.KeyboardEvent;

var numericStepper:NumericStepper = new NumericStepper();
numericStepper.maximum = 250;
numericStepper.minimum = 3;

numericStepper.textField.addEventListener(KeyboardEvent.KEY_UP, function(e:Event):void {
    var n:Number = Number(numericStepper.textField.text);
    if (n > numericStepper.maximum || n < numericStepper.minimum) {
        trace("Error: Out of Range!");
    }
});
addChild(numericStepper);