| Package | mx.formatters |
| Class | public class NumberFormatter |
| Inheritance | NumberFormatter Formatter Object |
| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
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.
Hide MXML SyntaxThe <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"/>
See also
| Property | Defined By | ||
|---|---|---|---|
![]() | constructor : Object
A reference to the class object or constructor function for a given object instance. | 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 | ||
![]() | defaultInvalidFormatError : String [static]
Error message for an invalid format string specified to the formatter. | Formatter | |
![]() | defaultInvalidValueError : String [static]
Error messages for an invalid value specified to the formatter. | Formatter | |
![]() | 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 | ||
![]() | prototype : Object [static]
A reference to the prototype object of a class or function object. | Object | |
| 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 | ||
| Method | Defined By | ||
|---|---|---|---|
Constructor. | NumberFormatter | ||
[override]
Formats the number as a String. | NumberFormatter | ||
![]() |
Indicates whether an object has a specified property defined. | Object | |
![]() |
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | |
![]() |
Indicates whether the specified property exists and is enumerable. | Object | |
![]() |
Sets the availability of a dynamic property for loop operations. | Object | |
![]() |
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | |
![]() |
Returns the string representation of the specified object. | Object | |
![]() |
Returns the primitive value of the specified object. | Object | |
decimalSeparatorFrom | property |
decimalSeparatorFrom:String| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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.
The default value is ".".
Implementation
public function get decimalSeparatorFrom():String public function set decimalSeparatorFrom(value:String):voidSee also
decimalSeparatorTo | property |
decimalSeparatorTo:String| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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.
The default value is ".".
Implementation
public function get decimalSeparatorTo():String public function set decimalSeparatorTo(value:String):voidSee also
precision | property |
precision:Object| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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.
The default value is -1.
Implementation
public function get precision():Object public function set precision(value:Object):voidrounding | property |
rounding:String| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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".
The default value is NumberBaseRoundType.NONE.
Implementation
public function get rounding():String public function set rounding(value:String):voidSee also
thousandsSeparatorFrom | property |
thousandsSeparatorFrom:String| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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.
The default value is ",".
Implementation
public function get thousandsSeparatorFrom():String public function set thousandsSeparatorFrom(value:String):voidSee also
thousandsSeparatorTo | property |
thousandsSeparatorTo:String| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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.
The default value is ",".
Implementation
public function get thousandsSeparatorTo():String public function set thousandsSeparatorTo(value:String):voidSee also
useNegativeSign | property |
useNegativeSign:Object| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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).
The default value is true.
Implementation
public function get useNegativeSign():Object public function set useNegativeSign(value:Object):voiduseThousandsSeparator | property |
useThousandsSeparator:Object| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
If true, split the number into thousands increments
by using a separator character.
The default value is true.
Implementation
public function get useThousandsSeparator():Object public function set useThousandsSeparator(value:Object):voidNumberFormatter | () | Constructor |
public function NumberFormatter()| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Constructor.
format | () | method |
override public function format(value:Object):String| Language Version: | ActionScript 3.0 |
| Product Version: | Flex 3 |
| Runtime Versions: | 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.
Parameters
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>
Thu May 20 2010, 02:19 AM -07:00

Show MXML Syntax