パッケージ | mx.utils |
クラス | public dynamic class ObjectProxy |
継承 | ObjectProxy Proxy |
実装 | IExternalizable, IPropertyChangeNotifier |
サブクラス | DataItem, ManagedObjectProxy |
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
addEventListener()
メソッドを使用することによって、任意の数のオブジェクトが、このオブジェクトでの変更を "リッスン" できます。
プロパティ | 定義元 | ||
---|---|---|---|
dispatcher : EventDispatcher
このプロキシの EventDispatcher への参照です。 | ObjectProxy | ||
notifiers : Object
このプロキシが変更をリッスンしているプロパティ変更通知者のハッシュマップ。このマップのキーはプロパティ名です。 | ObjectProxy | ||
object : Object [読み取り専用]
プロキシされているオブジェクトです。 | ObjectProxy | ||
propertyList : Array
プロキシになるオブジェクトのプロパティ名すべてのリストが含まれています。 | ObjectProxy | ||
proxyClass : Class
複合プロパティをプロキシする場合に作成するプロキシの種類を示します。 | ObjectProxy | ||
type : QName
このオブジェクトに関連付けられた修飾型名です。 | ObjectProxy |
メソッド | 定義元 | ||
---|---|---|---|
指定したオブジェクト、ID、およびプロキシの深さでこのプロキシを初期化します。 | ObjectProxy | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを登録します。 | ObjectProxy | ||
イベントをイベントフローに送出します。 | ObjectProxy | ||
特定のタイプのイベントに対して登録されたイベントリスナーがあるかどうかをチェックします。 | ObjectProxy | ||
複合プロパティが更新されたときに呼び出されます。 | ObjectProxy | ||
Flex では ObjectProxy のみを使用して匿名オブジェクトをラップするため、サーバー flex.messaging.io.ObjectProxy インスタンスはそれ自体を Map として直列化し、その Map がプレーン ActionScript オブジェクトとして返されます。 | ObjectProxy | ||
イベントリスナーを削除します。 | ObjectProxy | ||
指定されたイベントタイプについて、この オブジェクトまたはその上位要素にイベントリスナーが登録されているかどうかを確認します。 | ObjectProxy | ||
Flex ではラップする内部 ActionScript オブジェクトのみを直列化するため、サーバー flex.messaging.io.ObjectProxy はこの匿名オブジェクトの内容で設定され、Map としてユーザーに表示されます。 | ObjectProxy |
メソッド | 定義元 | ||
---|---|---|---|
[オーバーライド]
プロキシになるオブジェクトについて、指定された名前のメソッドの値を返します。 | ObjectProxy | ||
[オーバーライド]
プロキシになるオブジェクトで指定されたプロパティを削除し、削除通知をハンドラーに送信します。 | ObjectProxy | ||
イベントバブリングのプロキシまたはデイジーチェーンになる必要がある複雑なプロパティの管理方法をサブクラスがオーバーライドする場所を提供します。 | ObjectProxy | ||
[オーバーライド]
プロキシになるオブジェクトについて、指定されたプロパティ値を返します。 | ObjectProxy | ||
[オーバーライド]
プロキシになるオブジェクトで指定されたプロパティを更新し、更新通知をハンドラーに送信します。 | ObjectProxy | ||
このメソッドは、プロキシになるオブジェクトのプロパティ名すべての配列を作成します。 | ObjectProxy |
dispatcher | プロパティ |
protected var dispatcher:EventDispatcher
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
このプロキシの EventDispatcher への参照です。
notifiers | プロパティ |
protected var notifiers:Object
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
このプロキシが変更をリッスンしているプロパティ変更通知者のハッシュマップ。このマップのキーはプロパティ名です。
object | プロパティ |
object:Object
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
プロキシされているオブジェクトです。
実装
object_proxy function get object():Object
propertyList | プロパティ |
protected var propertyList:Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
プロキシになるオブジェクトのプロパティ名すべてのリストが含まれています。 下位要素は、setupPropertyList()
メソッドをオーバーライドして、このリストに入力する必要があります。
proxyClass | プロパティ |
protected var proxyClass:Class
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
複合プロパティをプロキシする場合に作成するプロキシの種類を示します。この値はサブクラスにより適宜割り当てられる必要があります。
type | プロパティ |
type:QName
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
このオブジェクトに関連付けられた修飾型名です。
実装
object_proxy function get type():QName
object_proxy function set type(value:QName):void
uid | プロパティ |
ObjectProxy | () | コンストラクター |
public function ObjectProxy(item:Object = null, uid:String = null, proxyDepth:int = -1)
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
指定したオブジェクト、ID、およびプロキシの深さでこのプロキシを初期化します。
パラメーターitem:Object (default = null ) — プロキシするオブジェクトです。アイテムが指定されていない場合は、匿名オブジェクトが作成されて割り当てられます。
| |
uid:String (default = null ) — このオブジェクトインスタンスの一意の ID を含むストリングです。すべてのオブジェクトは固有の識別方法を提供しなければならないため、PropertyChangeNotifier に準拠するために必要です。値が指定されていない場合は、任意の ID が割り当てられます。
| |
proxyDepth:int (default = -1 ) — 複合オブジェクトグラフで、プロパティへのアクセス中にプロキシを作成する必要のあるレベル数を示す整数です。デフォルトは -1 で、"無限の深さまでのプロキシ" を意味します。
|
例
この例の使用方法
import mx.events.PropertyChangeEvent; import mx.utils.ObjectUtil; import mx.utils.ObjectProxy; import mx.utils.StringUtil; var a:Object = { name: "Tyler", age: 5, ssnum: "555-55-5555" }; var p:ObjectProxy = new ObjectProxy(a); p.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, updateHandler); p.name = "Jacey"; p.age = 2; delete p.ssnum; // handler function function updateHandler(event:PropertyChangeEvent):void { trace(StringUtil.substitute("updateHandler('{0}', {1}, {2}, {3}, '{4}')", event.kind, event.property, event.oldValue, event.newValue, event.target.uid)); } // trace output updateHandler('opUpdate', name, Jacey, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2') updateHandler('opUpdate', age, 2, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2') updateHandler('opDelete', ssnum, null, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2')
addEventListener | () | メソッド |
public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを登録します。パラメーターの説明を含む詳細については、flash.events.EventDispatcher クラスの addEventListener()
を参照してください。
パラメーター
type:String — イベントのタイプです。
| |
listener:Function — イベントを処理するリスナー関数です。この関数は、Event オブジェクトを唯一のパラメーターとして受け取り、何も返さないようにします。
| |
useCapture:Boolean (default = false ) — リスナーが、キャプチャ段階、またはターゲットおよびバブリング段階で動作するかどうかを判断します。useCapture を true に設定すると、リスナーはキャプチャ段階のみでイベントを処理し、ターゲット段階またはバブリング段階では処理しません。useCapture を false に設定すると、リスナーはターゲット段階またはバブリング段階のみでイベントを処理します。3 つの段階すべてでイベントを受け取るには、addEventListener を 2 回呼び出します。useCapture を true に設定して呼び出し、useCapture を false に設定してもう一度呼び出します。
| |
priority:int (default = 0 ) — イベントリスナーの優先度レベルです。
| |
useWeakReference:Boolean (default = false ) — リスナーへの参照が強参照と弱参照のいずれであるかを判断します。デフォルトである強参照の場合は、リスナーのガベージコレクションが回避されます。弱参照では回避されません。
|
関連する API エレメント
callProperty | () | メソッド |
deleteProperty | () | メソッド |
override flash_proxy function deleteProperty(name:*):Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
プロキシになるオブジェクトで指定されたプロパティを削除し、削除通知をハンドラーに送信します。
パラメーター
name:* — 通常は、プロパティの名前を含むストリングです。localName プロパティの検証でプロパティ名が検出された場合は、QName になります。
|
Boolean — プロパティが削除されたかどうかを示すブール値です。
|
dispatchEvent | () | メソッド |
public function dispatchEvent(event:Event):Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
イベントをイベントフローに送出します。詳細については、flash.events.EventDispatcher クラスを参照してください。
パラメーター
event:Event — イベントフローに送出されるイベントオブジェクトです。イベントが再度送出されると、イベントのクローンが自動的に作成されます。イベントが送出された後にそのイベントの target プロパティは変更できないため、再送出処理のためにはイベントの新しいコピーを作成する必要があります。
|
Boolean — マトリックスが正常に反転された場合、true を返します。値が false の場合、イベントの送出に失敗したか、イベントで preventDefault() が呼び出されたことを示しています。
|
関連する API エレメント
getComplexProperty | () | メソッド |
object_proxy function getComplexProperty(name:*, value:*):*
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
イベントバブリングのプロキシまたはデイジーチェーンになる必要がある複雑なプロパティの管理方法をサブクラスがオーバーライドする場所を提供します。
パラメーター
name:* — 通常は、プロパティの名前を含むストリングです。localName プロパティの検証でプロパティ名が検出された場合は、QName になります。
| |
value:* — プロパティの値です。
|
* — ObjectProxy のプロパティ値またはインスタンスです。
|
getProperty | () | メソッド |
override flash_proxy function getProperty(name:*):*
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
プロキシになるオブジェクトについて、指定されたプロパティ値を返します。
パラメーター
name:* — 通常は、プロパティの名前を含むストリングです。localName プロパティの検証でプロパティ名が検出された場合は、QName になります。
|
* — プロパティの値です。インスタンスによっては、この値は ObjectProxy のインスタンスになる場合があります。
|
hasEventListener | () | メソッド |
public function hasEventListener(type:String):Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
特定のタイプのイベントに対して登録されたイベントリスナーがあるかどうかをチェックします。これにより、オブジェクトがイベントタイプの処理をイベントフロー階層のどこで変更したかを判断できます。詳細については、flash.events.EventDispatcher クラスを参照してください。
パラメーター
type:String — イベントのタイプです。
|
Boolean — 指定したタイプのリスナーが登録されている場合は true 、それ以外の場合は false を返します。
|
関連する API エレメント
propertyChangeHandler | () | メソッド |
public function propertyChangeHandler(event:PropertyChangeEvent):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
複合プロパティが更新されたときに呼び出されます。
パラメーター
event:PropertyChangeEvent — 変更されたイベント オブジェクトです。
|
readExternal | () | メソッド |
public function readExternal(input:IDataInput):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
Flex では ObjectProxy のみを使用して匿名オブジェクトをラップするため、サーバー flex.messaging.io.ObjectProxy インスタンスはそれ自体を Map として直列化し、その Map がプレーン ActionScript オブジェクトとして返されます。この値に、object_proxy オブジェクトプロパティを設定できます。
パラメーター
input:IDataInput — ObjectProxy が非直列化されるソースオブジェクトです。
|
removeEventListener | () | メソッド |
public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
イベントリスナーを削除します。対応するリスナーが EventDispatcher オブジェクトに登録されていない場合は、このメソッドを呼び出しても効果はありません。詳細については、flash.events.EventDispatcher クラスを参照してください。
パラメーター
type:String — イベントのタイプです。
| |
listener:Function — 削除するリスナーオブジェクトです。
| |
useCapture:Boolean (default = false ) — リスナーが、キャプチャ段階、またはターゲットおよびバブリング段階に対して登録されたかどうかを示します。リスナーがキャプチャ段階だけでなくターゲット段階とバブリング段階にも登録されている場合は、removeEventListener() を 2 回呼び出して両方のリスナーを削除する必要があります。1 回は useCapture を true に設定し、もう 1 回は useCapture を false に設定する必要があります。
|
関連する API エレメント
setProperty | () | メソッド |
setupPropertyList | () | メソッド |
protected function setupPropertyList():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
このメソッドは、プロキシになるオブジェクトのプロパティ名すべての配列を作成します。このリストにプロパティを追加する場合は、下位要素でこのメソッドをオーバーライドする必要があります。必ず、super.setupPropertyList
を呼び出してから propertyList
プロパティを変更してください。
willTrigger | () | メソッド |
public function willTrigger(type:String):Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
指定されたイベントタイプについて、この オブジェクトまたはその上位要素にイベントリスナーが登録されているかどうかを確認します。指定されたタイプのイベントがこの オブジェクトまたはその下位要素に送出されたときに、イベントリスナーがイベントフローの任意の段階でトリガーされる場合、このメソッドは true
を返します。 詳細については、flash.events.EventDispatcher クラスを参照してください。
パラメーター
type:String — イベントのタイプです。
|
Boolean — 指定したタイプのリスナーがトリガーされた場合は true 、それ以外の場合は false を返します。
|
関連する API エレメント
writeExternal | () | メソッド |
public function writeExternal(output:IDataOutput):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
Flex ではラップする内部 ActionScript オブジェクトのみを直列化するため、サーバー flex.messaging.io.ObjectProxy はこの匿名オブジェクトの内容で設定され、Map としてユーザーに表示されます。
パラメーター
output:IDataOutput — ObjectProxy が非直列化されるソースオブジェクトです。
|
Tue Jun 12 2018, 10:34 AM Z