Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex Flash Builder 4:从组件函数调用主函数_Apache Flex_Flash_Function_Call_Builder - Fatal编程技术网

Apache flex Flash Builder 4:从组件函数调用主函数

Apache flex Flash Builder 4:从组件函数调用主函数,apache-flex,flash,function,call,builder,Apache Flex,Flash,Function,Call,Builder,我尝试在flex中创建登录系统,我的应用程序如下所示: 我有一个main.mxml。当应用程序加载时,将调用名为“start”的函数。它验证用户是否登录。如果为“true”,则将用户重定向到仪表板,如果为“false”,则加载名为login的组件 my login.mxml组件有2个输入框(用户和密码)和一个“提交”按钮。当按下按钮时,一个名为“send_login”的函数将用户和pass值发送到服务器 我的问题听起来是这样的:当我按下我的登录组件中的提交按钮时,在发送了user和pass之后。

我尝试在flex中创建登录系统,我的应用程序如下所示:

我有一个main.mxml。当应用程序加载时,将调用名为“start”的函数。它验证用户是否登录。如果为“true”,则将用户重定向到仪表板,如果为“false”,则加载名为login的组件

my login.mxml组件有2个输入框(用户和密码)和一个“提交”按钮。当按下按钮时,一个名为“send_login”的函数将用户和pass值发送到服务器

我的问题听起来是这样的:当我按下我的登录组件中的提交按钮时,在发送了user和pass之后。。。我想再次从my main.mxml调用“start”函数,再次检查用户是否登录

我需要一些as2“根”

这就是我的代码的外观:

main.mxml

public function start():void {
  currentState="Start";
  loginstatus();
 }
login.mxml

private function send_login(event:Event):void {

 ... bla bla send user and pass....
 scriptLoader.addEventListener(Event.COMPLETE, handleLoadSuccessful);
}

private function handleLoadSuccessful(evt:Event):void { 

 trace("Data sent.");
  start();  <-- HERE i want to call the function from main.mxml
}
私有函数发送\ u登录(事件:事件):无效{
…bla bla发送用户并传递。。。。
scriptLoader.addEventListener(Event.COMPLETE,handleLoadSuccessful);
}
私有函数handleLoadSuccessful(evt:Event):void{
跟踪(“数据发送”);

太晚了伙计们,我找到了解决办法:D

import mx.core.FlexGlobals; 

private function handleLoadSuccessful(evt:Event):void { 
    trace("Data sent.");
    FlexGlobals.topLevelApplication.start();  
}

使用全局变量作为通信通道是不好的做法。您应该使用事件。