Flex学习笔记__03

1. MXML语法

MXML语言是专门用于Flex程序中,描述界面表现的一中XML标记语言。我们可以用它来管理程序的整体布局,控制组件的样式和外观,也可以构建非可视化的对象,比如XML数据、与服务器端通信的WebService、组件的数据源等。

    1.1 命名规范

MXML区分大小写,且文件名和变量标示名都区分大小写。

MXML文件以mxml作为扩展名,文件名要遵循AS中变量的命名规则。

所有的MXML都被视为用户自定义的组件,相当于对象,可以使用代码动态创建

变量名必须以字母或下划线开始,且只能包含字母、数字和下划线。

不能命名为applicationapplication 是主程序文件的默认标记,不可再使用。

     程序不能使用“mx”做为目录名,mx 是官方组件库的命名空间

    2.2 MXML 文件结构

     MXML为标准的XML文件。
      我们以一个MXML文件来说明:
Xml代码:
   <?xml version="1.0" encoding="utf-8"?> 
   <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
     <mx:Script> 
          <![CDATA[
            internal function doClick():void{
            tip_txt.text='欢迎来到RIA的世界--开始Flex之旅';
             }
         ]]> 
      </mx:Script>        
      <mx:Button x="41" y="90" label="Hello Flex" click="doClick()"/> 
      <mx:Label id="tip_txt" x="41" y="41" text="你好,Flex" fontSize="12"/>    
  </mx:Application>
第一行声明XML文件采用的语法版本version 和编码格式encoding(默认为utf-8)。
mx:Application:在每个Flex项目中,可能有多个MXML文件,mx:Application为根节点标示程序入口的运行文件。
xmlns:mx=http://www.adobe.com/2006/mxml :将mx定义为XML的命名空间,对应路径为http://www.adobe.com/2006/mxml ,Flex的配置文件中将这个路径定义为一个全局资源标识符,并对应了一个列出mx命名空间下的所有标签的文件。flex-config.xml中配置了命名空间。该文件可在Flex Builder2的安装路径下的Flex SDK 2\frameworks目录中找到。并找到如下代码。
   <namespaces> 
    <!-- Specify a URI to associate with a manifest of components for use as MXML --> 
      <!-- elements.                                                              --> 
      <namespace> 
         <uri>http://www.adobe.com/2006/mxml</uri> 
        <manifest>mxml-manifest.xml</manifest> 
    </namespace> 
    </namespaces> 
 
从上面的配置发现,http://www.adobe.com/2006/mxml 这个URI和mxml-manifest.xml文件对应,找到该文件,里面列出了所有标签和与标签相关联的类文件路径。
Xml代码:
   <?xml version="1.0"?> 
   <componentPackage> 
   <component id="Accordion" class="mx.containers.Accordion"/> 
    .................... 
   .................... 
   <component id="WebServiceOperation" class="mx.rpc.soap.mxml.Operation"/> 
   <component id="RemoteObject" class="mx.rpc.remoting.mxml.RemoteObject"/> 
   <component id="RemoteObjectOperation" class="mx.rpc.remoting.mxml.Operation"/> 
   <component id="HTTPService" class="mx.rpc.http.mxml.HTTPService"/> 
   <component id="Consumer" class="mx.messaging.Consumer"/> 
   <component id="Producer" class="mx.messaging.Producer"/>   
   </componentPackage> 

 <component id="Accordion" class="mx.containers.Accordion"/>中的id代表标签名,class表示类文件路径。
 xmlns:comp="comps.*" 定义一个命名空间,因为使用了通配符“*”,comps目录下的所有MXML和AS类(不包括子目录的文件)都被包括在comp命名空间下。如comps下有Login.mxml,则在程序中可这样调用:
Application 还有一个属性layout ,定义了该节点下元素的布局方式,也就是程序的总体布局方式。absolute 表示绝对定位,所有子元素将按照各自的x、y坐标来定位。
2. 使用组件
  <mx:Button></mx:Button> 定义一个按钮组件. 如果组件中未包含其他子元素可这样写:  <mx:Button />
   组件分类:
   布局类:包括所有的容器组件,如:HBox、Panel等,Spacer、HRule、VRule不是容器,但是主要用于布局。
   导航类: 菜单条、按钮条等各种导航功能的组件。
   交互类:内容展示、数据交互相关组件,如:按钮、下拉框、图片、视频等。
   
IDE中的组件面板列出了所有的可视化组件,可直接拖入编辑区使用。通过IDE的代码提示输入<mx:跟进可以列出mx下的所有对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值