`
hepeng19861212
  • 浏览: 150421 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

发现了一个observer设计模式在flex中应用例子

    博客分类:
  • flex
阅读更多
今天偶然看到这样一篇博客《Flex:弹出窗口中父子窗口之间的数据传输  》
当然这篇博客不是原创的,是转载他人的。

我看过之后,觉得很熟悉,貌似以前在学习设计模式时见过。觉得这个应该是属<观察者>模式的应用。
你们觉得他是属于哪种设计模式呢?

这个例子其实刚好解决了我遇到的一个flex的问题。
一个父TitleWindow,一个子TitleWindow,我想实现这个功能:当子窗口关闭时,父窗口要拿到子窗口的一些数据进行条件查询操作。
我起初觉得,用event的转发应该可以实现数据传递功能,方法是:自定义一个QueryEvent,在子窗口中封装数据,转发该事件。
父窗口则事先注册好该时间,当子窗口的事件流流经父窗口时,则可以从event对象中获取到数据,进行查询。

但是,这种做法后来被证实是错误的,父、子窗口并不是在同一个显示列表中中,因此它们之间不存在事件流动。
那该怎么才能将子窗口的数据传给父窗口呢?
答案就是:观察者模式。通过上面那篇博客应该可以看到观察者设计模式的影子。我也正是从这篇博客找到解决的方法的。
分享到:
评论

相关推荐

    Flex PureMVC例子

    Flex PureMVC是一个基于Model-View-Controller (MVC)设计模式的轻量级框架,专为Adobe Flex和ActionScript 3开发。这个框架的主要目标是提供一种结构化的方法来组织和分离应用程序中的业务逻辑、用户界面和数据访问...

    Flex puremvc 实例及说明(flex 4.6开发环境)

    Flex纯MVC(PureMVC)是一个开源的设计模式框架,专为富互联网应用程序(RIA)设计,特别是基于Adobe Flex和ActionScript的项目。在Flex 4.6开发环境中使用PureMVC,可以帮助开发者遵循经典的Model-View-Controller...

    flex4 订阅 发布 机制 实例 (lib )

    在软件设计模式中,观察者模式(Observer Pattern)是一种行为设计模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。在Flex4中,这个机制通过...

    Cairngorm例子

    在提供的文件中,"library.swf"可能是Cairngorm框架的一个运行示例,它包含编译后的Flex应用程序,展示了如何在实际项目中使用Cairngorm组件。而"catalog.xml"可能是应用程序的配置文件,列出库中可用的组件或资源,...

    Cairngorm简单小例子

    Cairngorm是一种轻量级的、基于MVC(Model-View-Controller)设计模式的Flex框架,由Adobe社区成员Stephan J. Schmidt创建。它主要用于构建可扩展、灵活且易于维护的富互联网应用程序(RIA),尤其是在使用Flex或...

    pureMvc AS3 10个有代表性的官方例子源代码。

    这个框架采用经典的Model-View-Controller(MVC)设计模式,并将其强化以适应富互联网应用(RIA)的开发需求。PureMVC的核心理念是将应用程序的业务逻辑、用户界面和数据模型分离,使得各个部分可以独立开发和维护。...

    rails magazine issue 3

    **知识点:** Michelangelo Altamore 在本期杂志中分享了如何使用 Ruby on Rails 构建一个简单的代码片段应用程序。这包括从零开始设置 Rails 环境,定义数据模型,创建数据库表结构,实现用户界面,以及添加必要的...

    Flash写的2048小游戏,用Robotlegs框架

    这不仅是一个学习Flash编程的好例子,也是一个了解MVC(模型-视图-控制器)设计模式和依赖注入实践的宝贵资源。 总结来说,Flash版的2048游戏结合了经典的游戏玩法与先进的开发框架,展示了如何在有限的代码量中...

    pureMVC最佳实践

    ### PureMVC最佳实践 #### 一、PureMVC简介 PureMVC是一个开源的、跨平台的架构框架,主要用于构建灵活、可扩展且易于维护的客户端应用...在实际应用中,理解每个核心组件的作用及其相互之间的协作机制是至关重要的。

    一些前端面试题.pdf

    **深拷贝**:完全复制对象及其所有的嵌套对象,生成一个全新的对象结构。 ### 前端路由的工作原理 前端路由使用JavaScript来拦截URL变化,并根据URL来显示不同的视图或内容,而无需重新加载整个页面。它通过监听...

Global site tag (gtag.js) - Google Analytics