Actionscript 3 在Flash AS3内部构建弹出窗口的最佳方法是什么
我试图在flash中完成一个“imagemap”,你点击图像中的不同区域,当你点击它时,一个弹出窗口(在flash中)出现,显示关于被点击对象的更多信息。弹出窗口有一个关闭按钮,可以关闭弹出窗口 我最大的问题是,我现在的代码是当你点击地图的某个区域时,它会动态创建一个弹出窗口,然后我使用addChild(_myPopup)将其添加到显示列表中。对我来说,这种方法的问题是,弹出窗口现在是我刚才按下的按钮的子按钮,但是这个对象组织对我来说没有意义。我希望弹出窗口不是按钮的子项,而是在它自己的层上,或者直接是舞台的子项 构建这样一个对象组织的好方法和代码体系结构是什么?我对AS3相当陌生,我已经构建了一些小应用程序,但我的知识有限 谢谢 更新Actionscript 3 在Flash AS3内部构建弹出窗口的最佳方法是什么,actionscript-3,popup,Actionscript 3,Popup,我试图在flash中完成一个“imagemap”,你点击图像中的不同区域,当你点击它时,一个弹出窗口(在flash中)出现,显示关于被点击对象的更多信息。弹出窗口有一个关闭按钮,可以关闭弹出窗口 我最大的问题是,我现在的代码是当你点击地图的某个区域时,它会动态创建一个弹出窗口,然后我使用addChild(_myPopup)将其添加到显示列表中。对我来说,这种方法的问题是,弹出窗口现在是我刚才按下的按钮的子按钮,但是这个对象组织对我来说没有意义。我希望弹出窗口不是按钮的子项,而是在它自己的层上,或
ok看起来像是在调用stage.addChild(myPopup),按钮内部的效果非常好。这是一种良好的做法吗?假设您的层次结构如下所示: stage Main class Image class Button 阶段 主类 图像类 按钮
最好不要在显示列表中向上调用,每个对象只处理它的子对象。然而,事件是向上沟通的好方式。让按钮分派一个事件,最好是自定义事件,然后使用主类中的侦听器处理该事件,然后在所有事件之上创建一个弹出窗口 组织可视应用程序层的一种常见做法是:
- 舞台
- 所有孩子都上主课
- 弹出式容器
- 工具提示容器
- 鼠标光标容器(显然不再需要,因为播放器10支持自定义光标)
因此,您总是在主类上方的弹出窗口容器中创建弹出窗口。如果您想要工具提示,它们应该进入工具提示容器。这种方法保证了弹出窗口在主应用程序上方始终可见,工具提示在所有内容上方始终可见。谢谢grapefrukt。最好知道在显示列表中向上调用是不好的做法。发送活动听起来很棒:)