| Paket | mx.formatters |
| Klasse | public class NumberFormatter |
| Vererbung | NumberFormatter Formatter Object |
| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
![]() | Beginnend mit Flex 4.5 empfiehlt Adobe die Verwendung der Klasse spark.formatters.NumberFormatter als Alternative zu dieser Klasse. |
Die NumberFormatter-Klasse formatiert eine gültige Zahl, indem die Rundung und Genauigkeit der Dezimalstelle, das Tausender-Trennzeichen und das Minuszeichen angepasst werden.
Wenn Sie sowohl die Eigenschaften rounding als auch precision verwenden, wird die Rundung zuerst angewendet. Anschließend wird die Dezimallänge festgelegt, indem der angegebene Wert für precision verwendet wird. Dadurch können Sie eine Zahl runden und dennoch eine nachgestellte Dezimalstelle verwenden, beispielsweise 303.99 = 304.00.
Wenn ein Fehler aufgetreten ist, wird ein leerer String zurückgegeben und ein den Fehler beschreibender String wird in der Eigenschaft error gespeichert. Die Eigenschaft error kann einen der folgenden Werte aufweisen:
-
"Invalid value"bedeutet, ein numerischer Wert wird an dieformat()-Methode übergeben. Der Wert sollte eine gültige Zahl im Format einer Zahl oder eines Strings sein. -
"Invalid format"bedeutet, dass einer der Parameter eine nicht verwendbare Einstellung enthält.
MXML-Syntax ausblendenThe <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"/>
Verwandte API-Elemente
| Eigenschaft | Definiert von | ||
|---|---|---|---|
![]() | constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | |
| decimalSeparatorFrom : String
Das zu verwendende Dezimaltrennzeichen beim Parsing eines Eingabestrings. | NumberFormatter | ||
| decimalSeparatorTo : String
Das zu verwendende Dezimaltrennzeichen bei der Ausgabe formatierter Dezimalzahlen. | NumberFormatter | ||
![]() | error : String
Beschreibung, die von der Formatierung gespeichert wird, wenn ein Fehler auftritt. | Formatter | |
| precision : Object
Anzahl der einzuschließenden Dezimalstellen im Ausgabestring. | NumberFormatter | ||
| rounding : String
Gibt die Art für die Rundung der Zahl an. | NumberFormatter | ||
| thousandsSeparatorFrom : String
Das als Tausender-Trennzeichen im Eingabestring zu verwendende Zeichen. | NumberFormatter | ||
| thousandsSeparatorTo : String
Das als Tausender-Trennzeichen zu verwendende Zeichen im Ausgabestring. | NumberFormatter | ||
| useNegativeSign : Object
Falls „true“, wird eine negative Zahl formatiert, indem ein Minuszeichen („-“) vorangestellt wird. | NumberFormatter | ||
| useThousandsSeparator : Object
Falls „true“ wird die Zahl in Tausender-Inkremente aufgeteilt, indem ein Trennzeichen verwendet wird. | NumberFormatter | ||
| Methode | Definiert von | ||
|---|---|---|---|
Konstruktor. | NumberFormatter | ||
[override]
Formatiert die Zahl als einen String. | NumberFormatter | ||
![]() |
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde. | Object | |
![]() |
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde. | Object | |
![]() |
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann. | Object | |
![]() |
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest. | Object | |
![]() |
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas. | Object | |
![]() |
Gibt das angegebene Objekt als String zurück. | Object | |
![]() |
Gibt den Grundwert des angegebenen Objekts zurück. | Object | |
decimalSeparatorFrom | Eigenschaft |
decimalSeparatorFrom:String| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Das zu verwendende Dezimaltrennzeichen beim Parsing eines Eingabestrings.
Vergewissern Sie sich beim Festlegen dieser Eigenschaft, dass der Wert der Eigenschaft thousandsSeparatorFrom nicht dieser Eigenschaft entspricht. Andernfalls tritt beim Formatieren des Werts ein Fehler auf.
Der Standardwert ist ".".
Implementierung
public function get decimalSeparatorFrom():String public function set decimalSeparatorFrom(value:String):voidVerwandte API-Elemente
decimalSeparatorTo | Eigenschaft |
decimalSeparatorTo:String| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Das zu verwendende Dezimaltrennzeichen bei der Ausgabe formatierter Dezimalzahlen.
Vergewissen Sie sich beim Festlegen dieser Eigenschaft, dass der Wert der Eigenschaft thousandsSeparatorTo nicht dieser Eigenschaft entspricht. Andernfalls tritt beim Formatieren des Werts ein Fehler auf.
Der Standardwert ist ".".
Implementierung
public function get decimalSeparatorTo():String public function set decimalSeparatorTo(value:String):voidVerwandte API-Elemente
precision | Eigenschaft |
precision:Object| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Anzahl der einzuschließenden Dezimalstellen im Ausgabestring. Sie können die Genauigkeit deaktivieren, indem Sie sie auf -1 setzen. Ein Wert von -1 bedeutet, dass die Genauigkeit nicht geändert werden soll. Wenn beispielsweise der Eingabewert 1.453 lautet und für rounding die Einstellung NumberBaseRoundType.NONE verwendet wird, wird ein Wert von 1.453 zurückgegeben. Wenn für precision die Einstellung -1 und eine bestimmte Rundung verwendet wird, wird ein Wert basierend auf diesem Rundungstyp zurückgegeben.
Der Standardwert ist -1.
Implementierung
public function get precision():Object public function set precision(value:Object):voidrounding | Eigenschaft |
rounding:String| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Gibt die Art für die Rundung der Zahl an.
In ActionScript können Sie die folgenden Konstanten zum Festlegen dieser Eigenschaft verwenden: NumberBaseRoundType.NONE, NumberBaseRoundType.UP, NumberBaseRoundType.DOWN oder NumberBaseRoundType.NEAREST. Gültige MXML-Werte sind „down“, „nearest“, „up“ und „none“.
Der Standardwert ist NumberBaseRoundType.NONE.
Implementierung
public function get rounding():String public function set rounding(value:String):voidVerwandte API-Elemente
thousandsSeparatorFrom | Eigenschaft |
thousandsSeparatorFrom:String| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Das als Tausender-Trennzeichen im Eingabestring zu verwendende Zeichen.
Vergewissen Sie sich beim Festlegen dieser Eigenschaft, dass der Wert der Eigenschaft decimalSeparatorFrom nicht dieser Eigenschaft entspricht. Andernfalls tritt beim Formatieren des Werts ein Fehler auf.
Der Standardwert ist ",".
Implementierung
public function get thousandsSeparatorFrom():String public function set thousandsSeparatorFrom(value:String):voidVerwandte API-Elemente
thousandsSeparatorTo | Eigenschaft |
thousandsSeparatorTo:String| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Das als Tausender-Trennzeichen zu verwendende Zeichen im Ausgabestring.
Vergewissen Sie sich beim Festlegen dieser Eigenschaft, dass der Wert der Eigenschaft decimalSeparatorTo nicht dieser Eigenschaft entspricht. Andernfalls tritt beim Formatieren des Werts ein Fehler auf.
Der Standardwert ist ",".
Implementierung
public function get thousandsSeparatorTo():String public function set thousandsSeparatorTo(value:String):voidVerwandte API-Elemente
useNegativeSign | Eigenschaft |
useNegativeSign:Object| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Falls true, wird eine negative Zahl formatiert, indem ein Minuszeichen („-“) vorangestellt wird. Falls false, wird die Zahl von Klammern umgeben formatiert, beispielsweise (400).
Der Standardwert ist true.
Implementierung
public function get useNegativeSign():Object public function set useNegativeSign(value:Object):voiduseThousandsSeparator | Eigenschaft |
useThousandsSeparator:Object| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Falls true wird die Zahl in Tausender-Inkremente aufgeteilt, indem ein Trennzeichen verwendet wird.
Der Standardwert ist true.
Implementierung
public function get useThousandsSeparator():Object public function set useThousandsSeparator(value:Object):voidNumberFormatter | () | Konstruktor |
public function NumberFormatter()| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Konstruktor.
format | () | Methode |
override public function format(value:Object):String| Sprachversion: | ActionScript 3.0 |
| Produktversion: | Flex 3 |
| Laufzeitversionen: | Flash Player 9, AIR 1.1 |
Formatiert die Zahl als einen String. Wenn value nicht formatiert werden kann, wird ein leerer String zurückgegeben und eine Beschreibung des Fehlers in der Eigenschaft error geschrieben.
Parameter
value:Object — Der zu formatierende Wert.
|
String — Formatierter String. Leer, wenn ein Fehler auftritt.
|
<?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, 10:04 AM Z

MXML-Syntax anzeigen