| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
The CurrencyFormatter class formats a valid number as a currency value.
It adjusts the decimal rounding and precision, the thousands separator,
and the negative sign; it also adds a currency symbol.
You place the currency symbol on either the left or the right side
of the value with the
alignSymbol property.
The currency symbol can contain multiple characters,
including blank spaces.
If an error occurs, an empty String is returned and a String that describes
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 contains an unusable setting.
Show MXML Syntax
Hide MXML Syntax
The <mx:CurrencyFormatter> tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:CurrencyFormatter
alignSymbol="left|right"
currencySymbol="$"
decimalSeparatorFrom="."
decimalSeparatorTo="."
precision="-1"
rounding="none|up|down|nearest"
thousandsSeparatorFrom=","
thousandsSeparatorTo=","
useNegativeSign="true|false"
useThousandsSeparator="true|false"
/>
View the examples
alignSymbol:String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Aligns currency symbol to the left side or the right side
of the formatted number.
Permitted values are "left" and "right".
The default value is "left".
Implementation public function get alignSymbol():String public function set alignSymbol(value:String):voidcurrencySymbol:String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Character to use as a currency symbol for a formatted number.
You can use one or more characters to represent the currency
symbol; for example, "$" or "YEN".
You can also use empty spaces to add space between the
currency character and the formatted number.
When the number is a negative value, the currency symbol
appears between the number and the minus sign or parentheses.
The default value is "$".
Implementation public function get currencySymbol():String public function set currencySymbol(value:String):voiddecimalSeparatorFrom:String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Decimal separator character to use
when parsing an input string.
The default value is ".".
Implementation public function get decimalSeparatorFrom():String public function set decimalSeparatorFrom(value:String):voiddecimalSeparatorTo:String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Decimal separator character to use
when outputting formatted decimal numbers.
The default value is ".".
Implementation public function get decimalSeparatorTo():String public function set decimalSeparatorTo(value:String):voidprecision:Object| Language Version: | ActionScript 3.0 |
| 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 1.453.
If precision is -1 and you 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:String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
How to round the number.
In ActionScript, the value can be NumberBaseRoundType.NONE,
NumberBaseRoundType.UP,
NumberBaseRoundType.DOWN, or NumberBaseRoundType.NEAREST.
In MXML, the value can be "none",
"up", "down", or "nearest".
The default value is NumberBaseRoundType.NONE.
Implementation public function get rounding():String public function set rounding(value:String):voidSee also
thousandsSeparatorFrom:String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Character to use as the thousands separator
in the input String.
The default value is ",".
Implementation public function get thousandsSeparatorFrom():String public function set thousandsSeparatorFrom(value:String):voidthousandsSeparatorTo:String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Character to use as the thousands separator
in the output string.
The default value is ",".
Implementation public function get thousandsSeparatorTo():String public function set thousandsSeparatorTo(value:String):voiduseNegativeSign:Object| Language Version: | ActionScript 3.0 |
| 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:Object| Language Version: | ActionScript 3.0 |
| 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):voidpublic function CurrencyFormatter()| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Constructor.
override public function format(value:Object):String| Language Version: | ActionScript 3.0 |
| Runtime Versions: | Flash Player 9, AIR 1.1 |
Formats value as currency.
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.
|
Returns | String — Formatted string. Empty if an error occurs.
|
<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate the CurrencyFormatter. -->
<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/halo">
<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) {
var temp:Number = Number(priceUS.text);
formattedUSPrice.text = usdFormatter.format(temp);
} else {
formattedUSPrice.text = "";
}
}
]]>
</fx:Script>
<fx:Declarations>
<mx:CurrencyFormatter id="usdFormatter" precision="2"
currencySymbol="$" decimalSeparatorFrom="."
decimalSeparatorTo="." useNegativeSign="true"
useThousandsSeparator="true" alignSymbol="left"/>
<mx:NumberValidator id="numVal" source="{priceUS}" property="text"
allowNegative="true" domain="real"/>
</fx:Declarations>
<s:Panel title="CurrencyFormatter Example"
width="75%" height="75%"
horizontalCenter="0" verticalCenter="0">
<mx:Form left="10" right="10" top="10" bottom="10">
<mx:FormItem label="Enter U.S. dollar amount:">
<s:TextInput id="priceUS" text="" width="50%"/>
</mx:FormItem>
<mx:FormItem label="Formatted amount: ">
<s:TextInput id="formattedUSPrice" text="" width="50%" editable="false"/>
</mx:FormItem>
<mx:FormItem>
<s:Button label="Validate and Format" click="Format();"/>
</mx:FormItem>
</mx:Form>
</s:Panel>
</s:Application>
© 2009 Adobe Systems Incorporated. All rights reserved.
Sat Oct 3 2009, 04:15 AM -07:00