如何从Script标签中访问顶级组件?

时间:2010-10-30 01:02:49

标签: flex

我已经多次这样做了,但不记得我的生活语法,显然是向Google提出了错误的问题。

如果我有这样的MXML文件(MyExample.mxml):

<s:TitleWindow
    xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx"

    <fx:Script>
        <![CDATA[

        ]]>
    </fx:Script> 
</s:TitleWindow>

我不能给TitleWindow一个id,因为它是顶级组件。如何从脚本标签内部访问TitleWindow组件,'this'关键字将为我提供类型Object,其中一个属性将为我提供标题窗口?

干杯,

克里斯

1 个答案:

答案 0 :(得分:0)

使用this关键字来引用MXML组件文件中的顶级组件。

<s:TitleWindow
    xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx"

<fx:Script>
    <![CDATA[
         public function doStuff():void{
           trace(this);
           trace(this.width);
           trace(this.height);
           trace(this.otherProperty);
         }
    ]]>
</fx:Script> 
</s:TitleWindow>

如果要访问实际的标题外观部件,可以通过访问titleDisplay外观部件来实现,最有可能是在partAdded方法中。