| パッケージ | mx.states |
| public class AddChild | |
| 継承 | AddChild Object |
| Implements | IOverride |
overrides プロパティで使用します。
MXML シンタックス
MXML シンタックスの非表示
The <mx:AddChild> tag has the following attributes:
<mx:AddChild Properties target="null" targetFactory="null" creationPolicy="auto" position="lastChild" relativeTo="parent of the State object" />
デフォルトの MXML プロパティtargetFactory
関連項目
| プロパティ | 定義 | ||
|---|---|---|---|
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
| Object | |
| creationPolicy : String
この子の作成ポリシーです。
| AddChild | ||
position : String
relativeTo プロパティで指定されたオブジェクトを基準にした、表示リスト内での子の位置です。 | AddChild | ||
![]() | prototype : Object
[static]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
| Object | |
| relativeTo : UIComponent
このオブジェクトを基準として子が追加されます。
| AddChild | ||
| target : DisplayObject
追加する子です。
| AddChild | ||
| targetFactory : IDeferredInstance
子を作成するファクトリです。
| AddChild | ||
| メソッド | 定義 | ||
|---|---|---|---|
|
コンストラクタです。
| AddChild | ||
|
オーバーライドを適用します。
| AddChild | ||
|
ファクトリから子インスタンスを作成します。
| AddChild | ||
![]() |
指定されたプロパティがオブジェクトに定義されているかどうかを示します。
| Object | |
|
オーバーライドを初期化します。
| AddChild | ||
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
| Object | |
![]() |
指定されたプロパティが存在し、列挙できるかどうかを示します。
| Object | |
|
オーバーライドを削除します。
| AddChild | ||
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。
| Object | |
![]() |
指定されたオブジェクトのストリング表現を返します。
| Object | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。
| Object | |
| creationPolicy | プロパティ |
creationPolicy:String [read-write]
この子の作成ポリシーです。このプロパティは、いつ targetFactory が子のインスタンスを作成するかを決定します。targetFactory プロパティを指定する場合にのみ、このプロパティが使用されます。使用できる値は次のとおりです。
| 値 | 説明 |
|---|---|
auto | (デフォルト) 最初に必要になったときにインスタンスを作成します。 |
all | アプリケーションが起動したときにインスタンスを作成します。 |
none | インスタンスを自動的に作成しません。インスタンスを作成するには、createInstance() メソッドを呼び出す必要があります。 |
デフォルト値"auto".
public function get creationPolicy():String
public function set creationPolicy(value:String):void
| position | プロパティ |
public var position:String
relativeTo プロパティで指定されたオブジェクトを基準にした、表示リスト内での子の位置です。有効な値は、"before"、"after"、"firstChild"、および "lastChild" です。
デフォルト値"lastChild".
| relativeTo | プロパティ |
public var relativeTo:UIComponent
このオブジェクトを基準として子が追加されます。このプロパティは position プロパティと一緒に使用します。このプロパティはオプションです。省略する場合、State オブジェクトの直接の親が使用されます。つまり、states プロパティを持つコンポーネントまたは State オブジェクトを指定する <mx:states> タグです。
| target | プロパティ |
target:DisplayObject [read-write]
追加する子です。このプロパティを設定すると、アプリケーション起動時に子インスタンスが作成されます。このプロパティを設定することは、creationPolicy が "all" の targetFactory プロパティを設定することと同じです。
targetFactory プロパティを設定している場合は、このプロパティを設定しないでください。
public function get target():DisplayObject
public function set target(value:DisplayObject):void
| targetFactory | プロパティ |
targetFactory:IDeferredInstance [read-write]子を作成するファクトリです。次のアイテムのいずれかを指定できます。
このプロパティを設定すると、子は creationPolicy プロパティで決定された時点でインスタンス化されます。
target プロパティを設定している場合は、このプロパティを設定しないでください。このプロパティは、AddChild クラスのデフォルトプロパティです。このプロパティを creationPolicy を "all" にして設定することは、target プロパティを設定することと同じです。
public function get targetFactory():IDeferredInstance
public function set targetFactory(value:IDeferredInstance):void
| AddChild | () | コンストラクタ |
public 関数 AddChild(relativeTo:UIComponent = null, target:DisplayObject = null, position:String = "lastChild")コンストラクタです。
パラメータrelativeTo:UIComponent (default = null) — このコンポーネントを基準として子が追加されます。
|
|
target:DisplayObject (default = null) — 子オブジェクト。すべての Flex コンポーネントは、DisplayObject クラスのサブクラスです。
|
|
position:String (default = "lastChild") — relativeTo コンポーネントを基準とした target の表示リスト内での位置です。"firstChild"、"lastChild"、"before"、または "after" のいずれかになります。
|
| apply | () | メソッド |
public function apply(parent:UIComponent):void
オーバーライドを適用します。Flex では元の値が保持されるため、後で remove() メソッドに元の値を復元できます。
そのビューステートに移行すると、自動的にこのメソッドが呼び出されます。このメソッドは直接呼び出さないでください。
パラメータparent:UIComponent — このオーバーライドを含む状態オブジェクトの親です。ターゲットが明示的に指定されていない場合、オーバーライドのターゲットとして使用されます。
|
| createInstance | () | メソッド |
public function createInstance():void
ファクトリから子インスタンスを作成します。targetFactory プロパティ、および creationPolicy 値を "none" に指定する場合のみ、このメソッドを使用する必要があります。Flex では、creationPolicy プロパティ値が "auto" または "all" の場合に、このメソッドを自動的に呼び出します。このメソッドを複数回呼び出す場合、子インスタンスは最初の呼び出しでのみ作成されます。
| initialize | () | メソッド |
public function initialize():void
オーバーライドを初期化します。Flex では apply() メソッドを最初に呼び出す前にこのメソッドを呼び出すため、このメソッドのオーバーライドには、1 回だけ実行する初期化コードを配置します。
そのビューステートに移行すると、Flex が自動的にこのメソッドを呼び出します。このメソッドは直接呼び出さないでください。
| remove | () | メソッド |
public function remove(parent:UIComponent):void
オーバーライドを削除します。apply() メソッドに記憶されている値が復元されます。
そのビューステートに移行すると、自動的にこのメソッドが呼び出されます。このメソッドは直接呼び出さないでください。
パラメータparent:UIComponent — このオーバーライドを含む状態オブジェクトの親です。ターゲットが明示的に指定されていない場合、オーバーライドのターゲットとして使用されます。
|
<?xml version="1.0" ?> <!-- Simple example to demonstrate the States class. --> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<!-- Define one view state, in addition to the base state.--> <mx:states> <mx:State name="Register"> <mx:AddChild relativeTo="{loginForm}" position="lastChild"> <mx:target> <mx:FormItem id="confirm" label="Confirm:"> <mx:TextInput/> </mx:FormItem> </mx:target> </mx:AddChild> <mx:SetProperty target="{loginPanel}" name="title" value="Register"/> <mx:SetProperty target="{loginButton}" name="label" value="Register"/> <mx:SetStyle target="{loginButton}" name="color" value="blue"/> <mx:RemoveChild target="{registerLink}"/> <mx:AddChild relativeTo="{spacer1}" position="before"> <mx:target> <mx:LinkButton id="loginLink" label="Return to Login" click="currentState=''"/> </mx:target> </mx:AddChild> </mx:State> </mx:states>
<!-- Define a Panel container that defines the login form.--> <mx:Panel title="Login" id="loginPanel" horizontalScrollPolicy="off" verticalScrollPolicy="off" paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">
<mx:Text width="100%" color="blue" text="Click the 'Need to Register?' link to change state. Click the 'Return to Login' link to return to the base state."/>
<mx:Form id="loginForm" > <mx:FormItem label="Username:"> <mx:TextInput/> </mx:FormItem> <mx:FormItem label="Password:"> <mx:TextInput/> </mx:FormItem> </mx:Form> <mx:ControlBar> <mx:LinkButton id="registerLink" label="Need to Register?" click="currentState='Register'"/> <mx:Spacer width="100%" id="spacer1"/> <mx:Button label="Login" id="loginButton"/> </mx:ControlBar> </mx:Panel> </mx:Application>