1.7.1 问题
使用AS里的方法改变MXML里子对象的属性
1.7.2 方法
通过元件的id属性来找到这个对象,并通过id属性来设置其他的属性或调用方法
1.7.3 讨论
我们很容易将AS和MXML代码想成两个不同的部分,但实际上他们并没有分开,看下面的例子:
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="300">
</mx:HBox>
就像你看到的,在changeAppearance方法里,用this来引用元件本身(即HBox),然后通过width和height属性来改变长和宽。通过TextFields的text属性我们可以从widthInputField和heightInputFields获得输入值。我们同样使用id属性来引用每个TextInput。每个组件都必须有唯一的id来对应他本身,而且只有一个层级,所以即使这个元件被嵌套在其他的子对象里,我们一样可以通过这个id来找到他。来看看下面这个例子,动态的设定子对象的属性:
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" width="520" height="650">
</mx:VBox>
上面的例子中,我们可以使用子对象的id来引用他或者改变他的属性。默认情况下,任何对其父级对象有使用权的对象都可以引用这个对象。