1
flex中的NumericStepper必須接受0到999.99之間的值。Flex NumericStepper:小數點前的整數部分的極限範圍
我試着設置了NumericStepper如下:
<s:NumericStepper id="numStepper" value="@{myValue}" maximum="999.99" snapInterval="0.01" stepSize="0.01" minimum="0"/>
和設置也一個的NumberValidator連接到它:
var nValidator:NumberValidator = new NumberValidator();
nValidator.source = numStepper;
nValidator.precision = 2;
numericStepper.maxChars=6;
nValidator.decimalSeparator=".";
事情的作品,但我想也可以通過直接限制用戶輸入鍵盤中的數字步進,以便用戶不能輸入「1.4567」,但只能輸入1.45。
所以我想要的東西,能根據我的規格限制數量的整數和小數部分:「」
- 最多3個字符的整數部分
- 小數點分隔
- 最多2個字符精密
也許有些正則表達式可以幫助?
感謝
我想的fractionalDigits是不是在Flex 4中,(我用的)可用。根據[文檔](http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/validators/supportClasses/NumberValidatorBase.html#fractionalDigits)的 – frankieta
@frankieta,fractionalDigits在Flex 4中可用(Spark)'NumberValidator'類。 **編輯:** Doh,我想你可能沒有使用Flex 4.5(在這個屬性被添加的地方...抱歉應該仔細閱讀文檔) –
我認爲這可能是矯枉過正,但你可以創建一個「MyNumericStepper 「擴展火花NumericStepper然後重寫」value「setter屬性的類,以總是以double精度進行取整。然後在你的MXML中,使用' ' –