| 套件 | mx.formatters |
| 類別 | public class NumberFormatter |
| 繼承 | NumberFormatter Formatter Object |
| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
![]() | 使用 Flex 4.5 開始,Adobe 建議您使用 spark.formatters.NumberFormatter 類別當作是此類別的替代類別。 |
The NumberFormatter class formats a valid number by adjusting the decimal rounding and precision, the thousands separator, and the negative sign.
If you use both the rounding and precision
properties, rounding is applied first, and then you set the decimal length
by using the specified precision value.
This lets you round a number and still have a trailing decimal;
for example, 303.99 = 304.00.
If an error occurs, an empty String is returned and a String
describing the error is saved to the error property.
The error property can have one of the following values:
-
"Invalid value"means an invalid numeric value is passed to theformat()method. The value should be a valid number in the form of a Number or a String. -
"Invalid format"means one of the parameters contain an unusable setting.
隱藏 MXML 語法The <mx:NumberFormatter> tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:NumberFormatter
decimalSeparatorFrom="."
decimalSeparatorTo="."
precision="-1"
rounding="none|up|down|nearest"
thousandsSeparatorFrom=","
thousandsSeparatorTo=","
useNegativeSign="true|false"
useThousandsSeparator="true|false"/>
相關 API 元素
| 屬性 | 定義自 | ||
|---|---|---|---|
![]() | constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | |
| decimalSeparatorFrom : String
Decimal separator character to use
when parsing an input String. | NumberFormatter | ||
| decimalSeparatorTo : String
Decimal separator character to use
when outputting formatted decimal numbers. | NumberFormatter | ||
![]() | error : String
Description saved by the formatter when an error occurs. | Formatter | |
| precision : Object
Number of decimal places to include in the output String. | NumberFormatter | ||
| rounding : String
Specifies how to round the number. | NumberFormatter | ||
| thousandsSeparatorFrom : String
Character to use as the thousands separator
in the input String. | NumberFormatter | ||
| thousandsSeparatorTo : String
Character to use as the thousands separator
in the output String. | NumberFormatter | ||
| useNegativeSign : Object
If true, format a negative number
by preceding it with a minus "-" sign. | NumberFormatter | ||
| useThousandsSeparator : Object
If true, split the number into thousands increments
by using a separator character. | NumberFormatter | ||
| 方法 | 定義自 | ||
|---|---|---|---|
Constructor. | NumberFormatter | ||
[覆寫]
Formats the number as a String. | NumberFormatter | ||
![]() |
指出物件是否有已定義的指定屬性。 | Object | |
![]() |
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | |
![]() |
指出指定的屬性是否存在,以及是否可列舉。 | Object | |
![]() |
為迴圈作業設定動態屬性的可用性。 | Object | |
![]() |
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | |
![]() |
會傳回指定之物件的字串形式。 | Object | |
![]() |
會傳回指定之物件的基本值。 | Object | |
decimalSeparatorFrom | 屬性 |
decimalSeparatorFrom:String| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Decimal separator character to use when parsing an input String.
When setting this property, ensure that the value of the
thousandsSeparatorFrom property does not equal this property.
Otherwise, an error occurs when formatting the value.
預設值為 "."。
實作
public function get decimalSeparatorFrom():String public function set decimalSeparatorFrom(value:String):void相關 API 元素
decimalSeparatorTo | 屬性 |
decimalSeparatorTo:String| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Decimal separator character to use when outputting formatted decimal numbers.
When setting this property, ensure that the value of the
thousandsSeparatorTo property does not equal this property.
Otherwise, an error occurs when formatting the value.
預設值為 "."。
實作
public function get decimalSeparatorTo():String public function set decimalSeparatorTo(value:String):void相關 API 元素
precision | 屬性 |
precision:Object| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Number of decimal places to include in the output String.
You can disable precision by setting it to -1.
A value of -1 means do not change the precision. For example,
if the input value is 1.453 and rounding
is set to NumberBaseRoundType.NONE, return a value of 1.453.
If precision is -1 and you have set some form of
rounding, return a value based on that rounding type.
預設值為 -1。
實作
public function get precision():Object public function set precision(value:Object):voidrounding | 屬性 |
rounding:String| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Specifies how to round the number.
In ActionScript, you can use the following constants to set this property:
NumberBaseRoundType.NONE, NumberBaseRoundType.UP,
NumberBaseRoundType.DOWN, or NumberBaseRoundType.NEAREST.
Valid MXML values are "down", "nearest", "up", and "none".
預設值為 NumberBaseRoundType.NONE。
實作
public function get rounding():String public function set rounding(value:String):void相關 API 元素
thousandsSeparatorFrom | 屬性 |
thousandsSeparatorFrom:String| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Character to use as the thousands separator in the input String.
When setting this property, ensure that the value of the
decimalSeparatorFrom property does not equal this property.
Otherwise, an error occurs when formatting the value.
預設值為 ","。
實作
public function get thousandsSeparatorFrom():String public function set thousandsSeparatorFrom(value:String):void相關 API 元素
thousandsSeparatorTo | 屬性 |
thousandsSeparatorTo:String| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Character to use as the thousands separator in the output String.
When setting this property, ensure that the value of the
decimalSeparatorTo property does not equal this property.
Otherwise, an error occurs when formatting the value.
預設值為 ","。
實作
public function get thousandsSeparatorTo():String public function set thousandsSeparatorTo(value:String):void相關 API 元素
useNegativeSign | 屬性 |
useNegativeSign:Object| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
If true, format a negative number
by preceding it with a minus "-" sign.
If false, format the number
surrounded by parentheses, for example (400).
預設值為 true。
實作
public function get useNegativeSign():Object public function set useNegativeSign(value:Object):voiduseThousandsSeparator | 屬性 |
useThousandsSeparator:Object| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
If true, split the number into thousands increments
by using a separator character.
預設值為 true。
實作
public function get useThousandsSeparator():Object public function set useThousandsSeparator(value:Object):voidNumberFormatter | () | 建構函式 |
public function NumberFormatter()| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Constructor.
format | () | 方法 |
override public function format(value:Object):String| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flex 3 |
| 執行階段版本: | Flash Player 9, AIR 1.1 |
Formats the number as a String.
If value cannot be formatted, return an empty String
and write a description of the error to the error property.
參數
value:Object — Value to format.
|
String — Formatted String. Empty if an error occurs.
|
<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate NumberFormatter. -->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Script>
<![CDATA[
import mx.events.ValidationResultEvent;
private var vResult:ValidationResultEvent;
// Event handler to validate and format input.
private function Format():void {
vResult = numVal.validate();
if (vResult.type == ValidationResultEvent.VALID) {
formattedNumber.text = numberFormatter.format(inputVal.text);
} else {
formattedNumber.text = "";
}
}
]]>
</fx:Script>
<fx:Declarations>
<mx:NumberFormatter id="numberFormatter" precision="4"
useThousandsSeparator="true" useNegativeSign="true"/>
<mx:NumberValidator id="numVal" source="{inputVal}" property="text"
allowNegative="true" domain="real"/>
</fx:Declarations>
<s:Panel title="NumberFormatter Example"
width="75%" height="75%"
horizontalCenter="0" verticalCenter="0">
<mx:Form left="10" right="10" top="10" bottom="10">
<mx:FormItem label="Enter number:">
<s:TextInput id="inputVal" text="" width="50%"/>
</mx:FormItem>
<mx:FormItem label="Formatted number (precision=4): ">
<s:TextInput id="formattedNumber" editable="false" width="50%"/>
</mx:FormItem>
<mx:FormItem>
<s:Button label="Validate and Format" click="Format();"/>
</mx:FormItem>
</mx:Form>
</s:Panel>
</s:Application>
Tue Jun 12 2018, 03:47 PM Z

顯示 MXML 語法