Flex - 通过main更改组件状态

时间:2011-02-07 18:44:42

标签: flex

我正试图通过主控制栏按钮(id = btn)更改组件状态...所以我添加一个事件监听器......代码就像这样

import flash.events.EventDispatcher;
            import flash.events.MouseEvent;
            import mx.core.FlexGlobals;

FlexGlobals.topLevelApplication.btn.addEventListener
                (MouseEvent.MOUSE_DOWN, change_state, true, 0, false);

public function change_state(e:MouseEvent):void{this.currentState="wait";}

但我得到了“1120访问未定义的属性change_state”错误...有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

我感觉change_state中的下划线导致了问题,当您引用它时,我觉得可能存在范围问题。尝试重写你的代码:

import flash.events.EventDispatcher;
import flash.events.MouseEvent;             
import mx.core.FlexGlobals;  

FlexGlobals.topLevelApplication.btn.addEventListener(MouseEvent.MOUSE_DOWN,this.changeState, true, 0, false);  

public function changeState(e:MouseEvent):void{this.currentState="wait";}

这会产生很大的不同吗?