| 包 | mx.states |
| 类 | public class SetProperty |
| 继承 | SetProperty Object |
| 实现 | IOverride |
overrides 属性中使用该类。
MXML 语法
隐藏 MXML 语法The <mx:SetProperty> tag
has the following attributes:
<mx:SetProperty Properties name="null" target="null" value="undefined" />
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | |
| name : String 要更改的属性的名称。 | SetProperty | ||
![]() | prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | |
| target : Object 包含要更改的属性的对象。 | SetProperty | ||
| value : * 属性的新值。 | SetProperty | ||
| 方法 | 定义方 | ||
|---|---|---|---|
构造函数。 | SetProperty | ||
应用覆盖。 | SetProperty | ||
![]() |
指示对象是否已经定义了指定的属性。 | Object | |
初始化覆盖。 | SetProperty | ||
![]() |
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | |
![]() |
指示指定的属性是否存在、是否可枚举。 | Object | |
删除覆盖。 | SetProperty | ||
![]() |
设置循环操作动态属性的可用性。 | Object | |
![]() |
返回指定对象的字符串表示形式。 | Object | |
![]() |
返回指定对象的原始值。 | Object | |
| name | 属性 |
public var name:String要更改的属性的名称。必须设置该属性,或在 SetProperty 构造函数中设置,或通过直接设置该属性值设置。
| target | 属性 |
| value | 属性 |
| SetProperty | () | 构造函数 |
public function SetProperty(target:Object = null, name:String = null, value:*)构造函数。
参数target:Object (default = null) — 要设置其属性的对象。默认情况下,Flex 使用 State 对象的直接父级。 | |
name:String (default = null) — 要设置的属性。 | |
value:* (default = NaN) — 视图状态中的属性值。 |
| apply | () | 方法 |
public function apply(parent:UIComponent):void
应用覆盖。Flex 将保留原始值,以便以后可以在 remove() 方法中恢复该值。
当进入状态时自动调用此方法。不应直接对其进行调用。
参数
parent:UIComponent — 包含此覆盖的状态对象的父级。如果未指定明确目标,覆盖应使用它作为其目标。 |
| initialize | () | 方法 |
public function initialize():void
初始化覆盖。Flex 在第一次调用 apply() 方法之前调用此方法,因此将覆盖的一次性初始化代码放在此方法中。
当进入状态时,Flex 自动调用此方法。不应直接对其进行调用。
IOverride 接口方法;该类将其作为空方法实现。
| 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>