flex的事件分为用户事件和系统事件,鼠标点击等是用户事件,而creationComponent事件就是系统事件。
所有的flex可视化组件都继承自mx.core.UIComponent,同是也继承了UIComponent的系统事件。当flex启动时,会触发一些系统事件,这些事件表明了组建在启动过程中的不同时间点,比如被创建、布局完成或者在屏幕上完成绘制等。实际上,这一些列的事件都是由一个事件mx.events.FlexEvent表示。
在组件所属的容器中,组件被实例化、加入到父容器的现实列表中,然后设置外观尺寸,最终完成容器中的布局,并被绘制出来。下图现实了组建的启动序列。
由于容器包含了子组件,因此容器启动时的序列不同于单一组件。不仅容器本身要完成创建的全过程,所包含的子组件也要依次地完成自身的创建。
在所有组件和容器被创建并最终绘制在屏幕上之后,Application对象将触发applicationComponent事件,该事件标志着应用启动完毕。
-
preinitialize在初始化之前触发,对于容器来说,所有子组件尚未定义。一般来说不会在该事件触发时配置组件
-
initialize当组件或容器完成构造,并设置初始化属性后触发。在这个阶段,对于容器,其所有的子组件的preinitialize事件已经触发,但是这些组件还没有完成布局。
-
creationComplete当应用或组建完成构造、布局和绘制可见时触发。当creationComplete事件发生时,组件已经被创建出来,因此开发者也能够访问同组件的相关属性,比如width等。开发者通常使用这个事件来对应用进行初始化配置。比如添加监听器,调用web服务等。
-
applicationComplete所有组件初始化完毕并显示
- 大小: 8.5 KB
- 大小: 16.5 KB
分享到:
相关推荐
当应用程序下次启动时,通过反序列化这些数据,可以恢复用户的绘图,从而提供一致的用户体验。 Flex中的`mx.serialization`包提供了更高级的序列化支持,它能处理复杂的Flex组件和MXML对象。`mx.serialization....
当Flex应用启动时,一系列的事件序列发生。首先是Application对象的实例化,接着初始化Application的SystemManager。在初始化过程中,预初始化事件被派发,然后调用createChild()方法创建所有应用组件。初始化事件...
【叨、校长】基于Blazeds...在实际开发过程中,还需要熟悉AMF(Action Message Format)数据序列化机制、事件驱动编程以及服务器端的Java服务接口设计等技术。不断学习和实践,才能更好地掌握Blazeds和Flex的综合应用。
了解Flex应用程序的生命周期有助于更好地控制应用的启动、暂停、恢复和关闭。在FLEX.pdf中,你会学习到如何管理组件的状态,以及如何在不同阶段执行特定的操作。 七、Flex调试与优化 学习如何使用Flex Builder或...
- **用户交互**:当用户在Flex组件上进行操作时,可以触发JavaScript事件,反之,JavaScript事件也能启动Flex应用的逻辑。 - **Ajax集成**:Flex应用可以利用JavaScript与服务器进行异步通信,比如使用...
1. **Global.asax**:在ASP.NET中,Global.asax文件是应用程序全局事件处理程序,它定义了整个应用程序生命周期中的事件,如应用程序启动、结束、会话开始和结束等。对于Flex与ASP.NET的集成,Global.asax可能包含对...
5. **编写消息生产者**:在Flex应用中创建一个消息生产者,它将使用`MessageProducer`对象发送消息到指定的目的地。消息可以是自定义的对象,通过AMF序列化为二进制数据。 6. **编写消息消费者**:在Flex端创建一个...
在Flex应用中,"预加载器"(preloader)是程序启动时显示的一个组件,它的主要功能是在用户等待整个应用程序完全加载时提供反馈。预加载器通常会显示一个进度条,以指示应用程序资源的加载进度。 在“flex自定义...
3. **Flex SDK**:Flex Software Development Kit包含了编译Flex应用程序所需的工具,包括编译器、Flex Builder IDE(基于Eclipse)以及Flex框架库。 4. **Flex Framework**:提供了丰富的预构建UI组件,如Button、...
BlazeDS 是一款开源的服务器端技术,由 Adobe 提供,主要用于实现 Java 应用程序与 Flex 客户端之间的通信。它利用 AMF(Action Message Format)协议,这是一种二进制格式,相比基于文本的协议如 XML,AMF 提供了更...
- 将BlazeDS作为数据服务引入,确保Flex应用程序能够与Java后端进行交互。 #### 三、常见问题及解决方法 1. **问题一:BlazeDS无法正确部署或启动** - **原因**:可能是WAR包放置位置不正确或者Tomcat版本不兼容...
6. **实际应用**:在提供的压缩包文件"datagrid_excel"中,可能包含了一个简单的Flex应用程序示例,演示了如何实现上述过程。这个应用可能包含了一个DataGrid,一个按钮,以及点击按钮时触发的事件处理函数,该函数...
通过BlazeDS,前端的Flex应用能够与后端的Java应用程序进行无缝通信,实现数据的实时交互。 在开始整合教程之前,我们需要确保以下几个前提条件: 1. 安装Java Development Kit (JDK):JDK是开发Java应用的基础,...
在这个例子中,当Flex应用启动时,它会向指定的URL发送一个GET请求,带有用户ID参数。服务端接收到请求后,根据ID查询数据库,然后将用户信息以JSON格式返回。Flex应用通过HTTPService的`result`事件处理器接收响应...
这些技术通常结合使用,以满足不同场景的需求,例如,AMF 提供了高效的数据序列化,WebSocket 支持全双工的持久连接。 总结来说,.NET 和 Flex 之间的通讯方式主要有基于 Socket 的实时通信,通过 XMLSocket 类在 ...
BlazeDS 是一款由Adobe开发的开源服务器端技术,它主要功能是实现Java应用程序与运行在浏览器中的Adobe Flex应用之间的远程控制(Remoting)和Web消息传递(Messaging)。通过BlazeDS,开发者能够轻松地创建富互联网...
这通常是在某个组件(如 Button 或 Canvas)上添加事件监听器,例如 `mouseDown` 事件,当用户点击并按住鼠标时启动拖放过程。然后,调用 `DragManager.doDrag()` 方法,传入源组件、数据表示(可以是任何可序列化的...
在客户端,Flex应用通过BlazeDS与后端服务通信的过程包括以下几个方面: - **创建通道**:客户端首先需要创建一个通道(如AMFChannel),用于建立与BlazeDS服务端的连接。 - **配置通道**:配置通道的属性,比如...
其中,`RemoteObject`是Adobe Flex框架提供的一个强大的组件,它允许Flex应用程序通过AMF(Action Message Format)协议与远程服务器进行通信。这种方式特别适合于与Java后端服务进行集成,因为它能够简化数据传输...