Adobe® Flash® Platform 用 ActionScript® 3.0 リファレンスガイド
ホーム  |  パッケージおよびクラスリストの非表示 |  パッケージ  |  クラス  |  新機能  |  索引  |  付録  |  英語で表示される理由
フィルター: サーバーからデータを取得しています...
サーバーからデータを取得しています...
fl.data 

DataProvider  - AS3 Flash

パッケージfl.data
クラスpublic class DataProvider
継承DataProvider Inheritance EventDispatcher Inheritance Object

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

DataProvider クラスには、List、DataGrid、TileList、ComboBox コンポーネントなど、任意のリストベースのコンポーネントのデータを調べたり修正したりできるメソッドおよびプロパティがあります。

データプロバイダーは、配列など、データソースとして機能する直線的なアイテムのコレクションです。データプロバイダー内の各アイテムは、データのフィールドを含むオブジェクトまたは XML オブジェクトです。DataProvider.getItemAt() メソッドを使用すると、インデックスを指定することによって、データプロバイダーに含まれるアイテムにアクセスできます。

例を表示



パブリックプロパティ
 プロパティ定義元
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。
Object
  length : uint
[読み取り専用] データプロバイダーに含まれているアイテムの数です。
DataProvider
パブリックメソッド
 メソッド定義元
  
DataProvider(value:Object = null)
データソースとしてリスト、XML インスタンス、またはデータオブジェクトの配列を使用して、新しい DataProvider オブジェクトを作成します。
DataProvider
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
  
データプロバイダーの最後にアイテムを追加します。
DataProvider
  
addItemAt(item:Object, index:uint):void
新しいアイテムをデータプロバイダーの指定のインデックス位置に追加します。
DataProvider
  
複数のアイテムを DataProvider の末尾に追加し、DataChangeType.ADD イベントを送出します。
DataProvider
  
addItemsAt(items:Object, index:uint):void
いくつかのアイテムをデータプロバイダーの指定のインデックス位置に追加し、DataChangeType.ADD イベントを送出します。
DataProvider
  
現在の DataProvider オブジェクトのコピーを作成します。
DataProvider
  
現在のデータプロバイダーの最後に、指定されたアイテムを連結します。
DataProvider
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
  
指定のインデックス位置のアイテムを返します。
DataProvider
  
指定されたアイテムのインデックスを返します。
DataProvider
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
  
DataProvider に含まれるすべてのデータアイテムを無効化し、DataChangeEvent.INVALIDATE_ALL イベントを送出します。
DataProvider
  
指定されたアイテムを無効化します。
DataProvider
  
指定されたインデックス位置にあるアイテムを無効化します。
DataProvider
 Inherited
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
  
merge(newData:Object):void
データプロバイダーに含まれるデータに指定のデータを追加し、重複するアイテムがあれば削除します。
DataProvider
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
  
データプロバイダーからすべてのアイテムを削除し、DataChangeType.REMOVE_ALL イベントを送出します。
DataProvider
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
  
データプロバイダーから指定されたアイテムを削除し、DataChangeType.REMOVE イベントを送出します。
DataProvider
  
指定されたインデックス位置のアイテムを削除し、DataChangeType.REMOVE イベントを送出します。
DataProvider
  
replaceItem(newItem:Object, oldItem:Object):Object
既存のアイテムを新しいアイテムに置き換え、DataChangeType.REPLACE イベントを送出します。
DataProvider
  
指定されたインデックス位置のアイテムを置き換え、DataChangeType.REPLACE イベントを送出します。
DataProvider
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
  
sort(... sortArgs):*
データプロバイダーに含まれるアイテムを並べ替え、DataChangeType.SORT イベントを送出します。
DataProvider
  
sortOn(fieldName:Object, options:Object = null):*
指定されたフィールドを使用してデータプロバイダーに含まれるアイテムを並べ替え、DataChangeType.SORT イベントを送出します。
DataProvider
  
データプロバイダーに含まれるデータの Array オブジェクト表現を作成します。
DataProvider
 Inherited
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。
Object
  
[オーバーライド] データプロバイダーに含まれるデータのストリング表現を作成します。
DataProvider
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
イベント
 イベント 概要 定義元
 Inherited[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
  データが変更された後に送出されます。DataProvider
 Inherited[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
  データが変更される前に送出されます。DataProvider
プロパティの詳細

length

プロパティ
length:uint  [読み取り専用]

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーに含まれているアイテムの数です。



実装
    public function get length():uint

例  ( この例の使用方法 )
次の例では、List コンポーネントインスタンスを作成し、データプロバイダーに含まれるアイテム数に合わせてリストのサイズを変更します。
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);
コンストラクターの詳細

DataProvider

()コンストラクター
public function DataProvider(value:Object = null)

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データソースとしてリスト、XML インスタンス、またはデータオブジェクトの配列を使用して、新しい DataProvider オブジェクトを作成します。

パラメーター
value:Object (default = null) — DataProvider の作成に使用されるデータです。

例  ( この例の使用方法 )

次の例では、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);

次の例では、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);

次の例では、XML オブジェクトを使用してデータプロバイダーに属性を設定します。
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);

次の例では、XML オブジェクトを使用してデータプロバイダーに子ノードを設定します。
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);
メソッドの詳細

addItem

()メソッド
public function addItem(item:Object):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーの最後にアイテムを追加します。

パラメーター

item:Object — 現在のデータプロバイダーの最後に追加されるアイテムです。

関連する API エレメント


例  ( この例の使用方法 )

次の例では、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

()メソッド 
public function addItemAt(item:Object, index:uint):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

新しいアイテムをデータプロバイダーの指定のインデックス位置に追加します。指定されたインデックス位置がデータプロバイダーの長さを超えていると、そのインデックスは無視されます。

パラメーター

item:Object — 追加するアイテムのデータを含むオブジェクトです。
 
index:uint — アイテムが追加されるインデックス位置です。


例外
RangeError — 指定したインデックス位置は 0 未満か、またはデータプロバイダーの長さ以上です。

関連する API エレメント

addItems

()メソッド 
public function addItems(items:Object):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

複数のアイテムを DataProvider の末尾に追加し、DataChangeType.ADD イベントを送出します。アイテムは、指定された順序で追加されます。

パラメーター

items:Object — データプロバイダーに追加されるアイテムです。

関連する API エレメント


例  ( この例の使用方法 )

次の例では、addItems() メソッドを使用してデータプロバイダーに複数のアイテムを追加します。
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

()メソッド 
public function addItemsAt(items:Object, index:uint):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

いくつかのアイテムをデータプロバイダーの指定のインデックス位置に追加し、DataChangeType.ADD イベントを送出します。

パラメーター

items:Object — データプロバイダーに追加されるアイテムです。
 
index:uint — アイテムが挿入されるインデックス位置です。


例外
RangeError — 指定したインデックス位置は 0 未満か、またはデータプロバイダーの長さ以上です。

関連する API エレメント

clone

()メソッド 
public function clone():DataProvider

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

現在の DataProvider オブジェクトのコピーを作成します。

戻り値
DataProvider — この DataProvider オブジェクトの新しいインスタンスです。

concat

()メソッド 
public function concat(items:Object):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

現在のデータプロバイダーの最後に、指定されたアイテムを連結します。このメソッドにより、DataChangeType.ADD イベントが送出されます。

パラメーター

items:Object — データプロバイダーに追加されるアイテムです。

関連する API エレメント

getItemAt

()メソッド 
public function getItemAt(index:uint):Object

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

指定のインデックス位置のアイテムを返します。

パラメーター

index:uint — 返されるアイテムの場所です。

戻り値
Object — 指定されたインデックス位置にあるアイテムです。

例外
RangeError — 指定したインデックス位置は 0 未満か、またはデータプロバイダーの長さ以上です。

関連する API エレメント

getItemIndex

()メソッド 
public function getItemIndex(item:Object):int

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

指定されたアイテムのインデックスを返します。

パラメーター

item:Object — 検索されるアイテムです。

戻り値
int — 指定されたアイテムのインデックス、または -1(指定されたアイテムが見つからない場合)です。

関連する API エレメント

invalidate

()メソッド 
public function invalidate():void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

DataProvider に含まれるすべてのデータアイテムを無効化し、DataChangeEvent.INVALIDATE_ALL イベントを送出します。アイテムは変更後に無効化されます。DataProvider は無効化されたアイテムを自動的に再描画します。

関連する API エレメント

invalidateItem

()メソッド 
public function invalidateItem(item:Object):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

指定されたアイテムを無効化します。アイテムは変更後に無効化されます。DataProvider は無効化されたアイテムを自動的に再描画します。

パラメーター

item:Object — 無効化されるアイテムです。

関連する API エレメント

invalidateItemAt

()メソッド 
public function invalidateItemAt(index:int):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

指定されたインデックス位置にあるアイテムを無効化します。アイテムは変更後に無効化されます。DataProvider は無効化されたアイテムを自動的に再描画します。

パラメーター

index:int — 無効化されるアイテムのインデックスです。


例外
RangeError — 指定したインデックス位置は 0 未満か、またはデータプロバイダーの長さ以上です。

関連する API エレメント

merge

()メソッド 
public function merge(newData:Object):void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーに含まれるデータに指定のデータを追加し、重複するアイテムがあれば削除します。このメソッドにより、DataChangeType.ADD イベントが送出されます。

パラメーター

newData:Object — データプロバイダーに結合されるデータです。

関連する API エレメント

removeAll

()メソッド 
public function removeAll():void

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーからすべてのアイテムを削除し、DataChangeType.REMOVE_ALL イベントを送出します。

関連する API エレメント

removeItem

()メソッド 
public function removeItem(item:Object):Object

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーから指定されたアイテムを削除し、DataChangeType.REMOVE イベントを送出します。

パラメーター

item:Object — 削除されるアイテムです。

戻り値
Object — 削除されたアイテムです。

関連する API エレメント

removeItemAt

()メソッド 
public function removeItemAt(index:uint):Object

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

指定されたインデックス位置のアイテムを削除し、DataChangeType.REMOVE イベントを送出します。

パラメーター

index:uint — 削除されるアイテムのインデックスです。

戻り値
Object — 削除されたアイテムです。

例外
RangeError — 指定したインデックス位置は 0 未満か、またはデータプロバイダーの長さ以上です。

関連する API エレメント

replaceItem

()メソッド 
public function replaceItem(newItem:Object, oldItem:Object):Object

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

既存のアイテムを新しいアイテムに置き換え、DataChangeType.REPLACE イベントを送出します。

パラメーター

newItem:Object — 置換されるアイテムです。
 
oldItem:Object — 置換するアイテムです。

戻り値
Object — 置き換えられたアイテムです。

例外
RangeError — アイテムが、データプロバイダー内に見つかりませんでした。

関連する API エレメント

replaceItemAt

()メソッド 
public function replaceItemAt(newItem:Object, index:uint):Object

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

指定されたインデックス位置のアイテムを置き換え、DataChangeType.REPLACE イベントを送出します。

パラメーター

newItem:Object — 置換するアイテムです。
 
index:uint — 置換されるアイテムのインデックスです。

戻り値
Object — 置き換えられたアイテムです。

例外
RangeError — 指定したインデックス位置は 0 未満か、またはデータプロバイダーの長さ以上です。

関連する API エレメント

sort

()メソッド 
public function sort(... sortArgs):*

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーに含まれるアイテムを並べ替え、DataChangeType.SORT イベントを送出します。

パラメーター

... sortArgs — 並べ替えに使用する引数です。

戻り値
* — 戻り値は、メソッドが引数を受け取るかどうかに応じて変わります。詳細については、Array.sort() メソッドを参照してください。このメソッドは sortOption プロパティが Array.UNIQUESORT に設定されていると 0 を返します。

関連する API エレメント

sortOn

()メソッド 
public function sortOn(fieldName:Object, options:Object = null):*

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

指定されたフィールドを使用してデータプロバイダーに含まれるアイテムを並べ替え、DataChangeType.SORT イベントを送出します。指定されるフィールドは、ストリングでも、優先順位に従って並べ替えに使用されるフィールドを指定するストリング値の配列でもかまいません。

パラメーター

fieldName:Object — 並べ替えに使用するアイテムフィールドです。この値には、ストリングまたはストリング値の配列を使用できます。
 
options:Object (default = null) — 並べ替えのオプションです。

戻り値
* — 戻り値は、メソッドが引数を受け取るかどうかに応じて変わります。詳細については、Array.sortOn() メソッドを参照してください。sortOption プロパティが Array.UNIQUESORT に設定されていると、このメソッドは 0 を返します。

関連する API エレメント

toArray

()メソッド 
public function toArray():Array

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーに含まれるデータの Array オブジェクト表現を作成します。

戻り値
Array — データプロバイダーに含まれるデータの Array オブジェクト表現です。

toString

()メソッド 
override public function toString():String

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データプロバイダーに含まれるデータのストリング表現を作成します。

戻り値
String — データプロバイダーに含まれるデータのストリング表現です。
イベントの詳細

dataChange

イベント
イベントオブジェクトの型: fl.events.DataChangeEvent
プロパティ DataChangeEvent.type = fl.events.DataChangeEvent.DATA_CHANGE

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データが変更された後に送出されます。

type プロパティ(dataChange イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
changeType実行された変更の種類を識別します。
currentTargetイベントリスナーで event オブジェクトをアクティブに処理しているオブジェクトです。
endIndex最後に変更されたアイテムのインデックスを識別します。
items変更されたアイテムをリストする配列。
startIndex最初に変更されたアイテムのインデックスを識別します。
targetイベントを送出したオブジェクトです。ターゲットは、必ずしもイベントを受け取るオブジェクトではありません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。

関連する API エレメント

preDataChange

イベント  
イベントオブジェクトの型: fl.events.DataChangeEvent
プロパティ DataChangeEvent.type = fl.events.DataChangeEvent.PRE_DATA_CHANGE

言語バージョン: ActionScript 3.0
製品バージョン: Flash CS3
ランタイムバージョン: Flash Player 9.0.28.0, AIR 1.0

データが変更される前に送出されます。

type プロパティ(preDataChange イベントオブジェクト)の値を定義します。このイベントオブジェクトは、コンポーネントデータが変更される前に送出されます。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
changeType実行される変更の種類を識別します。
currentTargetイベントリスナーで event オブジェクトをアクティブに処理しているオブジェクトです。
endIndex最後に変更されるアイテムのインデックスを識別します。
items変更対象のアイテムをリストする配列。
startIndex最初に変更されるアイテムのインデックスを識別します。
targetイベントを送出したオブジェクトです。ターゲットは、必ずしもイベントを受け取るオブジェクトではありません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。

関連する API エレメント

DataProviderExample.as

次の例では、データプロバイダーを使用して、複数のデータグリッドのコンテンツを維持する方法を示します。

例を実行するには、次の手順に従います。

  1. ライブラリに Label、Button、ComboBox、TextInput、および DataGrid コンポーネントを追加します。
  2. このコードを FLA ファイルと同じディレクトリに DataProviderExample.as という名前で保存します。
  3. FLA ファイル内の Document クラスを 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 ]英語で表示される理由
ActionScript 3.0 リファレンスガイドのコンテンツが英語で表示されます。

ActionScript 3.0 リファレンスガイドのすべての部分がすべての言語に翻訳されているわけではありません。言語エレメントが翻訳されていない場合、そのエレメントは英語で表示されます。例えば、ga.controls.HelpBox クラスはどの言語にも訳されていません。このため、リファレンスガイドの日本語バージョンでは、ga.controls.HelpBox クラスは英語で表示されます。