Guida di riferimento di ActionScript® 3.0 per la piattaforma Adobe® Flash®
Home  |  Nascondi elenco pacchetti e classi |  Pacchetti  |  Classi  |  Novità  |  Indice  |  Appendici  |  Perché in inglese?
Filtri: Recupero dati dal server...
Recupero dati dal server...
fl.data 

DataProvider  - AS3 Flash

Pacchettofl.data
Classepublic class DataProvider
EreditarietàDataProvider Inheritance EventDispatcher Inheritance Object

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

La classe DataProvider fornisce i metodi e le proprietà che consentono di eseguire le query e modificare i dati in qualsiasi componente basato su elenco (ad esempio, in un componente List, DataGrid, TileList o ComboBox).

Un fornitore di dati è una raccolta lineare di voci che funge da origine dati, ad esempio, un array. Ogni voce di un fornitore di dati è un oggetto o un oggetto XML contenente uno o più campi di dati. Potete accedere alle voci contenute in un fornitore di dati dall'indice utilizzando il metodo DataProvider.getItemAt().

Vedere gli esempi



Proprietà pubbliche
 ProprietàDefinito da
 Inheritedconstructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
Object
  length : uint
[sola lettura] Il numero di voci presenti nel fornitore di dati.
DataProvider
Metodi pubblici
 MetodoDefinito da
  
DataProvider(value:Object = null)
Crea un nuovo oggetto DataProvider mediante un elenco, un'istanza XML o un array di oggetti data come origine dati.
DataProvider
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento.
EventDispatcher
  
Aggiunge una voce alla fine del fornitore di dati.
DataProvider
  
addItemAt(item:Object, index:uint):void
Aggiunge una nuova voce al fornitore di dati nella posizione di indice specificata.
DataProvider
  
Aggiunge più voci alla fine del DataProvider e invia un evento DataChangeType.ADD.
DataProvider
  
addItemsAt(items:Object, index:uint):void
Aggiunge varie voci al fornitore di dati nella posizione di indice specificata e invia un evento DataChangeType.ADD.
DataProvider
  
Crea una copia dell'oggetto DataProvider corrente.
DataProvider
  
Concatena le voci specificate alla fine del fornitore di dati corrente.
DataProvider
 Inherited
Invia un evento nel flusso di eventi.
EventDispatcher
  
Restituisce la voce nella posizione di indice specificata.
DataProvider
  
Restituisce la posizione di indice della voce specificata.
DataProvider
 Inherited
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento.
EventDispatcher
 Inherited
Indica se per un oggetto è definita una proprietà specifica.
Object
  
Invalida tutte le voci di dati nel DataProvider e invia un evento DataChangeEvent.INVALIDATE_ALL.
DataProvider
  
Invalida la voce specificata.
DataProvider
  
Invalida la voce nella posizione di indice specificata.
DataProvider
 Inherited
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
Object
  
merge(newData:Object):void
Unisce i dati specificati ai dati contenuti nel fornitore di dati e rimuove le voci duplicate.
DataProvider
 Inherited
Indica se la proprietà specificata esiste ed è enumerabile.
Object
  
Rimuove tutte le voci dal fornitore di dati e invia un evento DataChangeType.REMOVE_ALL.
DataProvider
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Rimuove un listener dall'oggetto EventDispatcher.
EventDispatcher
  
Rimuove la voce specificata dal fornitore di dati e invia un evento DataChangeType.REMOVE.
DataProvider
  
Rimuove la voce nella posizione di indice specificata e invia un evento DataChangeType.REMOVE.
DataProvider
  
replaceItem(newItem:Object, oldItem:Object):Object
Sostituisce una voce esistente con una nuova voce e invia un evento DataChangeType.REPLACE.
DataProvider
  
Sostituisce la voce nell'indice specificato e invia un evento DataChangeType.REPLACE.
DataProvider
 Inherited
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
Object
  
sort(... sortArgs):*
Ordina le voci contenute nel fornitore di dati e invia un evento DataChangeType.SORT.
DataProvider
  
sortOn(fieldName:Object, options:Object = null):*
Ordina le voci contenute nel fornitore di dati in base al campo specificato e invia un evento DataChangeType.SORT.
DataProvider
  
Crea un oggetto Array che rappresenta i dati contenuti nel fornitore di dati.
DataProvider
 Inherited
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate.
Object
  
[override] Crea una stringa che rappresenta i dati contenuti nel fornitore di dati.
DataProvider
 Inherited
Restituisce il valore di base dell'oggetto specificato.
Object
 Inherited
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato.
EventDispatcher
Eventi
 Evento Riepilogo Definito da
 Inherited[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR ottiene lo stato di attivazione del sistema operativo ed entra nello stato attivo.EventDispatcher
  Inviato dopo che i dati sono stati modificati.DataProvider
 Inherited[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR perde l'attivazione del sistema operativo e sta entrando nello stato inattivo.EventDispatcher
  Inviato prima che cambino i dati.DataProvider
Descrizione delle proprietà

length

proprietà
length:uint  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Il numero di voci presenti nel fornitore di dati.



Implementazione
    public function get length():uint

Esempio  ( Come utilizzare questo esempio )
L'esempio seguente crea un'istanza del componente List e ridimensiona l'elenco per adattarlo al numero di voci presenti nel relativo fornitore di dati:
import fl.controls.List;
import fl.data.DataProvider;

var dp:DataProvider = new DataProvider();
dp.addItem({label:"Item 1"});
dp.addItem({label:"Item 2"});
dp.addItem({label:"Item 3"});
dp.addItem({label:"Item 4"});

var myList:List = new List();
myList.dataProvider = dp;
myList.rowHeight = 35;
myList.rowCount = dp.length;
myList.move(10, 10);
addChild(myList);
Descrizione della funzione di costruzione

DataProvider

()Funzione di costruzione
public function DataProvider(value:Object = null)

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Crea un nuovo oggetto DataProvider mediante un elenco, un'istanza XML o un array di oggetti data come origine dati.

Parametri
value:Object (default = null) — I dati utilizzati per creare DataProvider.

Esempio  ( Come utilizzare questo esempio )

L'esempio seguente crea un nuovo fornitore di dati utilizzando il metodo addItem():
import fl.controls.ComboBox;
import fl.data.DataProvider;
 
var dp:DataProvider = new DataProvider();
dp.addItem({label:"item 1a"});
dp.addItem({label:"item 2a"});

var myComboBox:ComboBox = new ComboBox()
myComboBox.dataProvider = dp;
myComboBox.move(10, 10);
addChild(myComboBox);

L'esempio seguente popola un fornitore di dati utilizzando un oggetto Array:
import fl.controls.ComboBox;
import fl.data.DataProvider;

var arr:Array = new Array();
arr.push({label:"item 1b"});
arr.push({label:"item 2b"});

var dp:DataProvider = new DataProvider(arr);

var myComboBox:ComboBox = new ComboBox()
myComboBox.dataProvider = dp;
myComboBox.move(10, 10);
addChild(myComboBox);

L'esempio seguente popola un fornitore di dati utilizzando un oggetto XML con attributi:
import fl.controls.ComboBox;
import fl.data.DataProvider;

var xml:XML = <items>
        <item label="item 1c" />
        <item label="item 2c" />
    </items>;

var dp:DataProvider = new DataProvider(xml);

var myComboBox:ComboBox = new ComboBox()
myComboBox.dataProvider = dp;
myComboBox.move(10, 10);
addChild(myComboBox);

L'esempio seguente popola un fornitore di dati utilizzando un oggetto XML con nodi secondari:
import fl.controls.ComboBox;
import fl.data.DataProvider;

var xml:XML = <items>
        <item>
            <label>item 1d</label>
        </item>
        <item>
            <label>item 2d</label>
        </item>
    </items>;

var dp:DataProvider = new DataProvider(xml);

var myComboBox:ComboBox = new ComboBox()
myComboBox.dataProvider = dp;
myComboBox.move(10, 10);
addChild(myComboBox);
Descrizione dei metodi

addItem

()metodo
public function addItem(item:Object):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Aggiunge una voce alla fine del fornitore di dati.

Parametri

item:Object — La voce da aggiungere alla fine del fornitore di dati corrente.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )

L'esempio seguente crea un nuovo fornitore di dati utilizzando il metodo addItem():
import fl.controls.ComboBox;
import fl.data.DataProvider;
 
var dp:DataProvider = new DataProvider();
dp.addItem({label:"item 1a"});
dp.addItem({label:"item 2a"});

var myComboBox:ComboBox = new ComboBox()
myComboBox.dataProvider = dp;
myComboBox.move(10, 10);
addChild(myComboBox);

addItemAt

()metodo 
public function addItemAt(item:Object, index:uint):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Aggiunge una nuova voce al fornitore di dati nella posizione di indice specificata. Se l'indice specificato supera la lunghezza del fornitore di dati, esso viene ignorato.

Parametri

item:Object — Un oggetto contenente i dati della voce da aggiungere.
 
index:uint — L'indice a cui deve essere aggiunta la voce.


Genera
RangeError — Se l'indice specificato è inferiore a 0 oppure è superiore o uguale alla lunghezza del fornitore di dati.

Elementi API correlati

addItems

()metodo 
public function addItems(items:Object):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Aggiunge più voci alla fine del DataProvider e invia un evento DataChangeType.ADD. Le voci vengono aggiunte nell'ordine in cui vengono specificate.

Parametri

items:Object — Le voci da aggiungere al fornitore di dati.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )

L'esempio seguente utilizza il metodo addItems() per aggiungere diverse voci al fornitore di dati:
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;

var arr:Array = [{col1:"1.A", col2:"1.B"}, {col1:"2.A", col2:"2.B"}]

var dp:DataProvider = new DataProvider();
dp.addItems(arr);
trace(dp.length); // 2

var c1:DataGridColumn = new DataGridColumn("col1");
var c2:DataGridColumn = new DataGridColumn("col2");

var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn(c1);
myDataGrid.addColumn(c2);
myDataGrid.dataProvider = dp;
myDataGrid.setSize(200, 160);
myDataGrid.move(10, 10);
addChild(myDataGrid);

addItemsAt

()metodo 
public function addItemsAt(items:Object, index:uint):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Aggiunge varie voci al fornitore di dati nella posizione di indice specificata e invia un evento DataChangeType.ADD.

Parametri

items:Object — Le voci da aggiungere al fornitore di dati.
 
index:uint — L'indice in cui devono essere inserite le voci.


Genera
RangeError — Se l'indice specificato è inferiore a 0 oppure è superiore o uguale alla lunghezza del fornitore di dati.

Elementi API correlati

clone

()metodo 
public function clone():DataProvider

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Crea una copia dell'oggetto DataProvider corrente.

Restituisce
DataProvider — Una nuova istanza dell'oggetto DataProvider.

concat

()metodo 
public function concat(items:Object):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Concatena le voci specificate alla fine del fornitore di dati corrente. Questo metodo invia un evento DataChangeType.ADD.

Parametri

items:Object — Le voci da aggiungere al fornitore di dati.

Elementi API correlati

getItemAt

()metodo 
public function getItemAt(index:uint):Object

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Restituisce la voce nella posizione di indice specificata.

Parametri

index:uint — Posizione della voce da restituire.

Restituisce
Object — La voce nella posizione di indice specificata.

Genera
RangeError — Se l'indice specificato è inferiore a 0 oppure è superiore o uguale alla lunghezza del fornitore di dati.

Elementi API correlati

getItemIndex

()metodo 
public function getItemIndex(item:Object):int

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Restituisce la posizione di indice della voce specificata.

Parametri

item:Object — La voce da trovare.

Restituisce
int — L'indice della voce specificata, oppure -1 se non è possibile trovare la voce specificata.

Elementi API correlati

invalidate

()metodo 
public function invalidate():void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Invalida tutte le voci di dati nel DataProvider e invia un evento DataChangeEvent.INVALIDATE_ALL. Le voci vengono invalidate dopo che sono state modificate; DataProvider ridisegna automaticamente le voci invalidate.

Elementi API correlati

invalidateItem

()metodo 
public function invalidateItem(item:Object):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Invalida la voce specificata. Una voce viene invalidata dopo che è stata modificata; DataProvider ridisegna automaticamente la voce invalidata.

Parametri

item:Object — Voce da invalidare.

Elementi API correlati

invalidateItemAt

()metodo 
public function invalidateItemAt(index:int):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Invalida la voce nella posizione di indice specificata. Una voce viene invalidata dopo che è stata modificata; DataProvider ridisegna automaticamente la voce invalidata.

Parametri

index:int — Indice della voce da invalidare.


Genera
RangeError — Se l'indice specificato è inferiore a 0 oppure è superiore o uguale alla lunghezza del fornitore di dati.

Elementi API correlati

merge

()metodo 
public function merge(newData:Object):void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Unisce i dati specificati ai dati contenuti nel fornitore di dati e rimuove le voci duplicate. Questo metodo invia un evento DataChangeType.ADD.

Parametri

newData:Object — I dati da unire all'interno del fornitore di dati.

Elementi API correlati

removeAll

()metodo 
public function removeAll():void

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Rimuove tutte le voci dal fornitore di dati e invia un evento DataChangeType.REMOVE_ALL.

Elementi API correlati

removeItem

()metodo 
public function removeItem(item:Object):Object

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Rimuove la voce specificata dal fornitore di dati e invia un evento DataChangeType.REMOVE.

Parametri

item:Object — Voce da rimuovere.

Restituisce
Object — La voce che è stata rimossa.

Elementi API correlati

removeItemAt

()metodo 
public function removeItemAt(index:uint):Object

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Rimuove la voce nella posizione di indice specificata e invia un evento DataChangeType.REMOVE.

Parametri

index:uint — L'indice della voce da rimuovere.

Restituisce
Object — La voce che è stata rimossa.

Genera
RangeError — Se l'indice specificato è inferiore a 0 oppure è superiore o uguale alla lunghezza del fornitore di dati.

Elementi API correlati

replaceItem

()metodo 
public function replaceItem(newItem:Object, oldItem:Object):Object

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Sostituisce una voce esistente con una nuova voce e invia un evento DataChangeType.REPLACE.

Parametri

newItem:Object — La voce da sostituire.
 
oldItem:Object — La voce sostitutiva.

Restituisce
Object — La voce che è stata sostituita.

Genera
RangeError — Impossibile trovare la voce nel fornitore di dati.

Elementi API correlati

replaceItemAt

()metodo 
public function replaceItemAt(newItem:Object, index:uint):Object

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Sostituisce la voce nell'indice specificato e invia un evento DataChangeType.REPLACE.

Parametri

newItem:Object — La voce sostitutiva.
 
index:uint — L'indice della voce da sostituire.

Restituisce
Object — La voce che è stata sostituita.

Genera
RangeError — Se l'indice specificato è inferiore a 0 oppure è superiore o uguale alla lunghezza del fornitore di dati.

Elementi API correlati

sort

()metodo 
public function sort(... sortArgs):*

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Ordina le voci contenute nel fornitore di dati e invia un evento DataChangeType.SORT.

Parametri

... sortArgs — Gli argomenti da utilizzare per l'ordinamento.

Restituisce
* — Il valore che viene restituito dipende dal ricevimento o meno di argomenti da parte del metodo. Per maggiori informazioni, vedete il metodo Array.sort(). Questo metodo restituisce un valore 0 quando la proprietà sortOption è impostata su Array.UNIQUESORT.

Elementi API correlati

sortOn

()metodo 
public function sortOn(fieldName:Object, options:Object = null):*

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Ordina le voci contenute nel fornitore di dati in base al campo specificato e invia un evento DataChangeType.SORT. Il campo specificato può corrispondere a una stringa o a un array di valori stringa che designano più campi da ordinare in ordine di precedenza.

Parametri

fieldName:Object — Il campo della voce in base al quale eseguire l'ordinamento. Questo valore può essere una stringa o un array di valori stringa.
 
options:Object (default = null) — Le opzioni per l'ordinamento.

Restituisce
* — Il valore che viene restituito dipende dal ricevimento o meno di argomenti da parte del metodo. Per ulteriori informazioni, vedete il metodo Array.sortOn(). Se la proprietà sortOption è impostata su Array.UNIQUESORT, questo metodo restituisce il valore 0.

Elementi API correlati

toArray

()metodo 
public function toArray():Array

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Crea un oggetto Array che rappresenta i dati contenuti nel fornitore di dati.

Restituisce
Array — Un oggetto Array che rappresenta i dati contenuti nel fornitore di dati.

toString

()metodo 
override public function toString():String

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Crea una stringa che rappresenta i dati contenuti nel fornitore di dati.

Restituisce
String — Una stringa che rappresenta i dati contenuti nel fornitore di dati.
Descrizione degli eventi

dataChange

Evento
Tipo di oggetto evento: fl.events.DataChangeEvent
proprietà DataChangeEvent.type = fl.events.DataChangeEvent.DATA_CHANGE

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Inviato dopo che i dati sono stati modificati.

Definisce il valore della proprietà type di un oggetto evento dataChange.

Questo evento ha le seguenti proprietà:

ProprietàValore
bubblesfalse
cancelablefalse; non è presente alcun comportamento predefinito da annullare.
changeTypeIdentifica il tipo di modifica che è stata apportata.
currentTargetL'oggetto che elabora attivamente l'oggetto event con un listener di eventi.
endIndexIdentifica l'indice dell'ultima voce che è stata modificata.
itemsUn array che elenca le voci modificate.
startIndexIdentifica l'indice della prima voce che è stata modificata.
targetL'oggetto che invia l'evento. Il target non è sempre l'oggetto listener dell'evento. Utilizzate la proprietà currentTarget per accedere all'oggetto che intercetta l'evento.

Elementi API correlati

preDataChange

Evento  
Tipo di oggetto evento: fl.events.DataChangeEvent
proprietà DataChangeEvent.type = fl.events.DataChangeEvent.PRE_DATA_CHANGE

Versione linguaggio: ActionScript 3.0
Versione prodotto: Flash CS3
Versioni runtime: Flash Player 9.0.28.0, AIR 1.0

Inviato prima che cambino i dati.

Definisce il valore della proprietà type di un oggetto evento preDataChange. Questo oggetto evento viene inviato prima che i dati del componente vengano modificati.

Questo evento ha le seguenti proprietà:

ProprietàValore
bubblesfalse
cancelablefalse; non è presente alcun comportamento predefinito da annullare.
changeTypeIdentifica il tipo di modifica che deve essere apportata.
currentTargetL'oggetto che elabora attivamente l'oggetto event con un listener di eventi.
endIndexIdentifica l'indice dell'ultima voce da modificare.
itemsUn array che elenca le voci da modificare.
startIndexIdentifica l'indice della prima voce da modificare.
targetL'oggetto che invia l'evento. Il target non è sempre l'oggetto listener dell'evento. Utilizzate la proprietà currentTarget per accedere all'oggetto che intercetta l'evento.

Elementi API correlati

DataProviderExample.as

Questo esempio mostra come i fornitori di dati possono essere utilizzati per gestire il contenuto di diverse griglie di dati.

Per provare l'esempio, eseguite queste operazioni:

  1. Aggiungete i componenti Label, Button, ComboBox, TextInput e DataGrid alla libreria.
  2. Salvate questo codice come DataProviderExample.as nella stessa directory del file FLA.
  3. Impostate la classe documento nel file FLA su DataProviderExample.
package
{
    import fl.controls.Button;
    import fl.controls.ComboBox;
    import fl.controls.DataGrid;
    import fl.controls.Label;
    import fl.controls.TextInput;
    import fl.data.DataProvider;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.text.TextFieldAutoSize;
    
    public class DataProviderExample extends Sprite
    {        
        private var southern:DataGrid;
        private var northern:DataGrid;
        private var world:DataGrid;
        private var southernRoster:DataProvider;
        private var northernRoster:DataProvider;
        private var leagueCB:ComboBox;
        private var nameTI:TextInput;
        private var goalsTI:TextInput;
        private var submitBtn:Button;

        public function DataProviderExample() {
            southernRoster = new DataProvider();
            northernRoster = new DataProvider();
            
            createDataGrids();
            createUI();
        }

        private function createUI():void {
            var description:Label = new Label();
            description.text = "Enter player's name, goals scored, and hemisphere of origin:";
            description.autoSize = TextFieldAutoSize.LEFT;
            nameTI = new TextInput();
            goalsTI = new TextInput();
            
            var submitBtn:Button = new Button();
            submitBtn.label = "Submit Player";
            submitBtn.addEventListener(MouseEvent.CLICK, submitPlayer);
            
            leagueCB = new ComboBox();
            leagueCB.addItem( { label:"Northern", data: 0 } );
            leagueCB.addItem( { label:"Southern", data: 1 } );
            
            description.move(10,10);
            nameTI.move(10,40);
            nameTI.setSize(150,24);
            goalsTI.move(170,40);
            goalsTI.setSize(40,24);
            leagueCB.move(220,40);
            leagueCB.setSize(120,24);
            submitBtn.move(350,40);
            goalsTI.restrict = "0123456789";
            
            addChild(description);
            addChild(leagueCB);
            addChild(submitBtn);
            addChild(nameTI);
            addChild(goalsTI);
        }
        private function submitPlayer(e:MouseEvent):void {
            if(nameTI.text != "" && goalsTI.text != "") {
                var targetRoster:DataProvider;

                if(leagueCB.selectedItem.label == "Southern") {
                    targetRoster = southernRoster;
                }
                else {
                    targetRoster = northernRoster;
                }
    
                targetRoster.addItem( { Name: nameTI.text, Goals: goalsTI.text } );
                
                var worldRoster:DataProvider = southernRoster.clone();
                worldRoster.merge(northernRoster);
                worldRoster.sortOn("Goals", Array.NUMERIC | Array.DESCENDING);
                southernRoster.sortOn("Goals", Array.NUMERIC | Array.DESCENDING);
                northernRoster.sortOn("Goals", Array.NUMERIC | Array.DESCENDING);
                
                world.dataProvider = worldRoster;
                
                nameTI.text = "";
                goalsTI.text = "";
            }
        }        

        private function createDataGrids():void {
            southern = new DataGrid();
            northern = new DataGrid();
            world = new DataGrid();
            southern.move(10,100);
            northern.move(180,100);
            world.move(350,100);
            southern.setSize(170, 250);
            northern.setSize(170, 250);
            world.setSize(170, 250);
            southern.columns = 
            northern.columns = 
            world.columns = [ "Name", "Goals" ];
            southern.dataProvider = southernRoster;
            northern.dataProvider = northernRoster;            
            addChild(southern);
            addChild(northern);
            addChild(world);

            var northernLabel:Label = new Label();
            northernLabel.autoSize = TextFieldAutoSize.LEFT;
            northernLabel.text = "Southern Hemisphere";
            northernLabel.move(10,75);
            addChild(northernLabel);
            var southernLabel:Label = new Label();
            southernLabel.autoSize = TextFieldAutoSize.LEFT;
            southernLabel.text = "Northern Hemisphere";
            southernLabel.move(180,75);
            addChild(southernLabel);
            var majorLabel:Label = new Label();
            majorLabel.autoSize = TextFieldAutoSize.LEFT;
            majorLabel.text = "World";
            majorLabel.move(350,75);
            addChild(majorLabel);
        }
    }
}




[ X ]Perché in inglese?
Il contenuto della Guida di riferimento di ActionScript 3.0 appare in inglese

Non tutte le parti della Guida di riferimento di ActionScript 3.0 sono tradotte in tutte le lingue. Quando un elemento del linguaggio non è tradotto, viene riportato in inglese. Ad esempio, la classe ga.controls.HelpBox non è tradotta in nessuna lingua. Pertanto, nella versione italiana della guida di riferimento, la descrizione della classe ga.controls.HelpBox è riportata in inglese.