| Package | mx.formatters |
| Class | public class NumberFormatter |
| Inheritance | NumberFormatter Formatter Object |
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
the format() 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 Syntax
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"/>
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 | ||
|
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 the specified object.
| Object | |
![]() |
Returns the primitive value of the specified object.
| Object | |
| decimalSeparatorFrom | property |
decimalSeparatorFrom:String [read-write] Decimal separator character to use when parsing an input String.
The default value is ".".
public function get decimalSeparatorFrom():String
public function set decimalSeparatorFrom(value:String):void
| decimalSeparatorTo | property |
decimalSeparatorTo:String [read-write] Decimal separator character to use when outputting formatted decimal numbers.
The default value is ".".
public function get decimalSeparatorTo():String
public function set decimalSeparatorTo(value:String):void
| precision | property |
precision:Object [read-write]
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.
public function get precision():Object
public function set precision(value:Object):void
| rounding | property |
rounding:String [read-write] 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.
public function get rounding():String
public function set rounding(value:String):void
See also
| thousandsSeparatorFrom | property |
thousandsSeparatorFrom:String [read-write] Character to use as the thousands separator in the input String.
The default value is ",".
public function get thousandsSeparatorFrom():String
public function set thousandsSeparatorFrom(value:String):void
| thousandsSeparatorTo | property |
thousandsSeparatorTo:String [read-write] Character to use as the thousands separator in the output String.
The default value is ",".
public function get thousandsSeparatorTo():String
public function set thousandsSeparatorTo(value:String):void
| useNegativeSign | property |
useNegativeSign:Object [read-write]
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.
public function get useNegativeSign():Object
public function set useNegativeSign(value:Object):void
| useThousandsSeparator | property |
useThousandsSeparator:Object [read-write]
If true, split the number into thousands increments
by using a separator character.
The default value is true.
public function get useThousandsSeparator():Object
public function set useThousandsSeparator(value:Object):void
| NumberFormatter | () | Constructor |
public function NumberFormatter()
Constructor.
| format | () | method |
public override function format(value:Object):String
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"?>
<!-- Simple example to demonstrate NumberFormatter. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx: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= "";
}
}
]]>
</mx:Script>
<mx:NumberFormatter id="numberFormatter" precision="4"
useThousandsSeparator="true" useNegativeSign="true"/>
<mx:NumberValidator id="numVal" source="{inputVal}" property="text"
allowNegative="true" domain="real"/>
<mx:Panel title="NumberFormatter Example" width="75%" height="75%"
paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">
<mx:Form>
<mx:FormItem label="Enter number:">
<mx:TextInput id="inputVal" text="" width="50%"/>
</mx:FormItem>
<mx:FormItem label="Formatted number (precision=4): ">
<mx:TextInput id="formattedNumber" editable="false" width="50%"/>
</mx:FormItem>
<mx:FormItem>
<mx:Button label="Validate and Format" click="Format();"/>
</mx:FormItem>
</mx:Form>
</mx:Panel>
</mx:Application>