Apache Flex 4.16.1 API Reference | All Packages | All Classes | Index | Frames No Frames |
Formatter

Package | mx.formatters
Class | public class Formatter
Inheritance | Formatter Object
Implements | IFormatter
Subclasses | CurrencyFormatter, DateFormatter, NumberFormatter, PhoneFormatter, PostCodeFormatter, ZipCodeFormatter

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The Formatter class is the base class for all data formatters. Any subclass of Formatter must override the `format()` method.

MXML Syntax Show MXML Syntax
Hide MXML Syntax

The Formatter class defines the following tag attributes, which all of its subclasses inherit:

      <mx:tagname
        Properties
        error=""
      />

View the examples

Public Properties

| Property | Defined By
--- | --- | ---
|  | 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

Protected Properties

| Property | Defined By
--- | --- | ---
|  | resourceManager : IResourceManager [read-only] A reference to the object which manages all of the application's localized resources. | Formatter

Public Methods

| Method | Defined By
--- | --- | ---
|  | Formatter() Constructor. | Formatter
|  | format(value:Object):String Formats a value and returns a String containing the new, formatted, value. | Formatter

Protected Methods

| Method | Defined By
--- | --- | ---
|  | resourcesChanged():void This method is called when a Formatter is constructed, and again whenever the ResourceManager dispatches a "change" Event to indicate that the localized resources have changed in some way. | Formatter

Property Detail

defaultInvalidFormatError | property

`defaultInvalidFormatError:String`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Error message for an invalid format string specified to the formatter. The localeChain property of the ResourceManager is used to resolve the default error message. If it is unable to find a value, it will return `null`. This can happen if none of the locales specified in the localeChain are compiled into the application.

The default value is `"Invalid format"`.

Implementation
`public static function get defaultInvalidFormatError():String`
`public static function set defaultInvalidFormatError(value:String):void`

defaultInvalidValueError | property |

`defaultInvalidValueError:String`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Error messages for an invalid value specified to the formatter. The localeChain property of the ResourceManager is used to resolve the default error message. If it is unable to find a value, it will return `null`. This can happen if none of the locales specified in the localeChain are compiled into the application.

The default value is `"Invalid value"`.

Implementation
`public static function get defaultInvalidValueError():String`
`public static function set defaultInvalidValueError(value:String):void`

error | property |

`public var error:String`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Description saved by the formatter when an error occurs. For the possible values of this property, see the description of each formatter.

Subclasses must set this value in the `format()` method.

resourceManager | property |

`resourceManager:IResourceManager` [read-only]

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

A reference to the object which manages all of the application's localized resources. This is a singleton instance which implements the IResourceManager interface.

This property can be used as the source for data binding.

Implementation
`protected function get resourceManager():IResourceManager`
Constructor Detail

Formatter | () | Constructor

`public function Formatter()`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Constructor.

Method Detail

format | () | method

`public function format(value:Object):String`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Formats a value and returns a String containing the new, formatted, value. All subclasses must override this method to implement the formatter.

Parameters

| `value:Object` — Value to be formatted.

Returns

| `String` — The formatted string.

resourcesChanged | () | method |

`protected function resourcesChanged():void`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

This method is called when a Formatter is constructed, and again whenever the ResourceManager dispatches a `"change"` Event to indicate that the localized resources have changed in some way.

This event will be dispatched when you set the ResourceManager's `localeChain` property, when a resource module has finished loading, and when you call the ResourceManager's `update()` method.

Subclasses should override this method and, after calling `super.resourcesChanged()`, do whatever is appropriate in response to having new resource values.

Examples
SimpleFormatterExample.mxml

    <?xml version="1.0" encoding="utf-8"?>
    <!--

      Licensed to the Apache Software Foundation (ASF) under one or more
      contributor license agreements.  See the NOTICE file distributed with
      this work for additional information regarding copyright ownership.
      The ASF licenses this file to You under the Apache License, Version 2.0
      (the "License"); you may not use this file except in compliance with
      the License.  You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.

    -->
    <!-- Simple example to demonstrate the Formatter class. -->
    <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[
                // Event handler to format the input.
                private function Format():void {
                    // The format() method returns the formatted String,
                    // or an empty String if there is an error.
                    var formattedVal:String = numberFormatter.format(inputVal.text);

                    if (formattedVal.length == 0) {
                        // If there is an error, the Format.error property
                        // contains the reason.
                        formattedNumber.text = numberFormatter.error;
                    } else {
                        formattedNumber.text = formattedVal;
                    }
                }
            ]]>
        </fx:Script>

        <fx:Declarations>
            <mx:NumberFormatter id="numberFormatter" />
        </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 - a letter is invalid:">
                    <s:TextInput id="inputVal" text="" width="75%"/>
                </mx:FormItem>
                <mx:FormItem label="Formatted number: ">
                    <s:TextInput id="formattedNumber" editable="false" width="75%"/>
                </mx:FormItem>
                <mx:FormItem>
                    <s:Button label="Validate and Format" click="Format();"/>
                </mx:FormItem>
            </mx:Form>
        </s:Panel>

    </s:Application>

Wed Nov 15 2017, 09:50 AM +01:00