Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.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 如何从其他类触发ActionScript 3.0中的自定义事件_Apache Flex_Actionscript 3_Events_Actionscript_Adobe - Fatal编程技术网

Apache flex 如何从其他类触发ActionScript 3.0中的自定义事件

Apache flex 如何从其他类触发ActionScript 3.0中的自定义事件,apache-flex,actionscript-3,events,actionscript,adobe,Apache Flex,Actionscript 3,Events,Actionscript,Adobe,我想创建一个自定义事件,任何其他类都可以访问它。 假设我有NavigationMenuClass.as,其中包含一些next、prev按钮,以及另一个页面类。as应该在每个next或prev按钮按下时显示特定页面。 我需要创建一个名为“showPage”的自定义事件(将编写一个EVENTClass.as来管理所有此类事件),当该事件发生时,需要调用Page.as类成员函数 private function nextPress(event:Event) { //dispatchEvent(

我想创建一个自定义事件,任何其他类都可以访问它。 假设我有
NavigationMenuClass.as
,其中包含一些
next、prev按钮
,以及另一个
页面类。as
应该在每个
next
prev
按钮按下时显示特定页面。 我需要创建一个名为
“showPage”
的自定义事件(将编写一个EVENTClass.as来管理所有此类事件),当该事件发生时,需要调用Page.as类成员函数

private function nextPress(event:Event) {
    //dispatchEvent(new Event("showPage"));
    // this will call the Page class Menmber function page:Page = new Page; page.showNextPage();
}

在不传递对象的情况下,如何使用
Event
Event Dispatcher
方法调用特定的成员函数。

您似乎有点困惑

因此,您有一个显示层次结构,其中Page.as显示对象是NavigationMenuClass.as的父对象,对吗

您的NavigationMenuClass应该为“下一个”和“上一个”分派事件。Page类应该侦听这些事件并执行一些操作

您的代码已经完成了分派部分,尽管它被注释掉了。我会将其放入按钮的单击处理程序中,并使用它发送下一个或上一个事件:

private function nextPress(event:Event) {
    // dispatchEvent(new Event("showPage"));
    // this will call the Page class Menmber function page:Page = new Page; page.showNextPage();
    dispatchEvent(new Event("next"));
}
在您的页面中。仅添加事件侦听器时:

navigationMenuClassInstance.addEventListener('next', onNext);
public function onNext(event:Event):void{
  // write code to change content
}
您可以使用相同的方法实现上一个事件。来解决你的一些“奇怪的字眼”

我想创建一个自定义事件并将其 将由任何其他类访问

我不知道你说的无障碍是什么意思。
您可以创建一个扩展事件的自定义事件类,任何其他类都可以使用它,只要它导入它。上面的示例没有创建自定义事件类,而是使用默认事件类

在调度方面,事件只将自身调度到其“父级”。如果事件冒泡,它将转到它的父级,然后是父级的父级,依此类推,一直到舞台

我怎么能不把东西传出去呢 调用特定的成员函数 使用事件和事件调度器 方法


我不知道你说的“传递物体”是什么意思。在分派事件时,该事件类始终作为该事件侦听器方法的参数提供给事件侦听器。这有点像传递一个物体。

你似乎有点困惑

因此,您有一个显示层次结构,其中Page.as显示对象是NavigationMenuClass.as的父对象,对吗

您的NavigationMenuClass应该为“下一个”和“上一个”分派事件。Page类应该侦听这些事件并执行一些操作

您的代码已经完成了分派部分,尽管它被注释掉了。我会将其放入按钮的单击处理程序中,并使用它发送下一个或上一个事件:

private function nextPress(event:Event) {
    // dispatchEvent(new Event("showPage"));
    // this will call the Page class Menmber function page:Page = new Page; page.showNextPage();
    dispatchEvent(new Event("next"));
}
在您的页面中。仅添加事件侦听器时:

navigationMenuClassInstance.addEventListener('next', onNext);
public function onNext(event:Event):void{
  // write code to change content
}
您可以使用相同的方法实现上一个事件。来解决你的一些“奇怪的字眼”

我想创建一个自定义事件并将其 将由任何其他类访问

我不知道你说的无障碍是什么意思。
您可以创建一个扩展事件的自定义事件类,任何其他类都可以使用它,只要它导入它。上面的示例没有创建自定义事件类,而是使用默认事件类

在调度方面,事件只将自身调度到其“父级”。如果事件冒泡,它将转到它的父级,然后是父级的父级,依此类推,一直到舞台

我怎么能不把东西传出去呢 调用特定的成员函数 使用事件和事件调度器 方法


我不知道你说的“传递物体”是什么意思。在分派事件时,该事件类始终作为该事件侦听器方法的参数提供给事件侦听器。这有点像传递一个对象。

另外,在遵循Flextras优秀指南时,请确保NavigationMenuClass扩展了EventDispatcher,否则仅调用dispatchEvent()方法将无法工作

另外,在遵循Flextras优秀指南时,请确保NavigationMenuClass扩展了EventDispatcher,否则仅调用dispatchEvent()方法将不起作用

如果类没有扩展EventDispatcher,它应该抛出一个编译器错误,对吗?如果类没有扩展EventDispatcher,它应该抛出一个编译器错误,对吗?