第三章 Flex的基础 (5-6小节)

第五节使 MXML

MXML 是一 XML 语言,你可以使用它去布 Adobe Flex 应用程序的用户界面。你还可以使 MXML 去定义其它的方面,如存取服务器端的数据,将用户组件与服务器端数据源进行绑定等

MXML 看起来与你所熟悉 HTML 很类似,然而 MXML 更为结构化,并提供更为丰富的标签集 MXML HTML 之间最大的不同之处在于, MXML 所定义的应用程序将被编译 SWF 文件并 Flash Player 进行渲染,它提供 HTML 程序更为丰富的和动态的用户界面。

你可以 MXML 应用程序编写成一个文件或多个文件。同时 MXML 还支持 MXML ActionScrip 所定制的组件。

编写一个简单的应用程序

随后的简单程序显 Hello World ”,该例子包含 <mx:Application> 标签和两个子标签,即 <mx:Panel> 标签和 <mx:Label> 标签。 <mx:Application> 是所 Fles 应用程序的根标签 <mx:Panel> 标签定义了一个面板容器,它包括了标题栏、状态信息、边界、以及容纳子对象的内容区域 <mx:Label> 标签中使用了一 Label 控件用来显示文本

<?xml version="1.0"? > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >

<mx:Panel title="My Application" paddingTop="10" paddingBottom="10 " paddingLeft="10" paddingRight="10" >

<mx:Label text="Hello World!" fontWeight="bold" fontSize="24" />

</mx:Panel> </mx:Application>

将文件保存 hello.mxml 。请注意 MXML 文件的后 .mxml 必须是小写。然后编译并运行所生成 SWF 文件,结果如下所示

MXML 标签 ActionScript 类的关

Adobe 是通 ActionScript 类库来实 Flex 应用程序的。类库包括了组件(容器和控件),管理类,数据服务类等等。事实上,你是在使用类库所支持 MXML ActionScript 来开 Flex 应用程序

MXML 标签 ActionScript 类或类的属性相对应 Flex MXML 标签并编译成相应 SWF 文件。举个例子 Flex ActionScript 按钮类 /Button class 来定义按钮控件。 MXML 中,你使用如 MXML 语句来创建一个按钮控件

<mx:Button label="Submit" />

当你使 MXML 标签来声明一个控件时,事实上你就创建了相应那个类的一个实例对象。上 MXML 语句创建了一个按钮对象,并初始化它 label 属性值。

MXML 相关的技术标准

MXM 相关的技术标准有

1. XML 标准 XML 文档使用标签去决定结构化信息的内容,以及它们之间的关系

2. 事件模型标准 Flex 事件模型是文档对象模 /Document Object Model DOM )第三级事件的一个子集,该模型是 World Wide Web Consortium W3C )起草制定

3. Web 服务标 Flex 提供与服务器交互 MXML 标签,遵循 Web 服务描述语 /Web Services Description Language WSDL )的规则。具体包括了简单对象访问协 /Simple Object Access Protocol SOAP )和超文本传送协 /Hypertext Transfer Protocol HTTP

4. Java

Flex 提供了与服务器 Java 对象交互 MXML 标签,包 plain old Java objects POJOs ), JavaBeans 和企业 /Enterprise JavaBeans EJBs

5. HTTP

Flex 提供了相应 MXML 标签去支持标准 HTTP GET POST 请求,以及 HTTP 返回数据的处理

6. 图形标

Flex 还提供了相应 MXML 标签去使 JPEG GIF PNG 图象。 Flex 还能够 SWF 文件 Scalable Vector Graphics SVG )文件导入到应用程序中

7. 层叠样式表标 MXML 样式的定义和使用遵循 W3C Cascading Style Sheets CSS )标准

第六节使 ActionScript Adobe Flex 开发人员还可以使 ActionScript 去扩展应用程序的功能性 ActionScript 提供了 MXML 更为低层的、更细致的、更为强大的功能。

ActionScript

ActionScript 是一种运用 Adobe Flash Player 的编程语言,它 core JavaScript 非常类似。 ActionScript 3.0 的特性完全实现 ECMAScript for XML (E4X)

MXML 程序中 ActionScript

ActionScript 极大地扩展 Flex 开发人员的能力。通过使 ActionScript ,你可以定义事件监听器,获取或设置组件的属性,处理回调功能,创建新的类、包和组件等。

你可以运用如下所示方法 Flex 中使 ActionScript

  1. 1. <mx:Script> 标签中插 ActionScript 代码块
  2. 2. 调用存储 system_classes 目录结构中的全 ActionScript 功能函数
  3. 3. user_classes 中的外部类和包来处理更为复杂的任务
  4. 4. 使用标准 Flex 组件
  5. 5. 使 ActionScript 类扩展已有的组件
  6. 6. 使 ActionScript 创建新的组件
  7. 7. Flash 创建环境中创建新的组件 SWC 文件)

ActionScript 的编

Flex 应用程序的逻辑实现是 ActionScript 类, MXML 文件, SWF 文件,外部组件共同组成。最后 Flash Player SWF 文件并在客户端机器上进行运行。

你可以 MXML 文件中使 ActionScript 代码段 Flex 编译器将 MXML 文件和它的子文件变换成一个单独 ActionScript 类。同时,你还可以 MXML 文件中导 ActionScript 类,这些类会被添加到最后 SWF 文件中。

随后的例子显示了源文件是如何生 SWF 文件,并通 J2EE 服务器发送给客户端的:

Flex 应用程序中使 ActionScript

当你编写一 Flex 应用程序时,使 MXML 去布置用户的界面,使 ActionScript 去处理与用户的交互。你可以使用不同的方法 ActionScript MXML 混合在一起。

Flex 应用程序中使 ActionScript ,你可以 <mx:Script> 标签中添加脚本块,或者包含外部 ActionScript 文件。另外,你还可以 MXML 程序中导入外部的类文件或整个类的包。

ActionScript 组件

通过使 ActionScript Flex 程序中进行引用的方式,你可以创建可复用的组件。使 ActionScript 所创建的组件可以包含图形元素、定制的商业逻辑、或扩展已存在 Flex 组件。

例如,你可以定义一个定制的按钮,它 Flex 的按钮控件派生出来,就象这样

package myControls { public class MyButton extends Button { public function MyButton() {

...

}

...

} }

这个例子中,你 MyButton.as 文件里编写 MyButton 控件,并将文件保存 Flex 应用程序的根目录 myControls 子目录下。然后 Flex 应用程序中引用你定制的按钮控件,如 MyApp.mxml 文件里,就象这样

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"

xmlns:cmp="myControls.*" >

<cmp:MyButton label="Jack"/>

</mx:Application>

本例中,你首先定 cmp 命名空间,用它来放置你定制的组件,然后使用该命名空间为前缀 MXML 标签对组件进行引用。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值