Flex基本语法

Flex基本语法
绝大多数MXML标识符合AS2.0规范,MXML文件编译产生的SWF文件包含相应的AS对象。
AS2.0是一种面向对象的语言,符合ECMAScript第4版规范。
MXML文件的命名规范:
1 : 必须符合AS的命名规范,以字母或下划线开头;
2 : 不得使用AS的类名、组件ID标识和命名空间的MXML标识作为文件名;
3 : 文件名必须用小写的.mxml作为后缀名。

在MXML文件中,组件的属性使用和AS类相同的命名约定,以小写字母开头,每个单词的开头字母大写。你可以有两种方式设置属性的值:使用标记的属性或者子节点标记。Macromedia推荐使用标记的属性来设置一般组件属性,复杂的组件属性用子节点来完成。MXML的组件属性包含如下:
标量属性(包括数字及字符串)
如:
<Labelwidth='50'height='25'text='HelloWorld'/>

注意:属性的值不能包含@符号

数组属性
<mx:List>
<mx:dataProvider>
<mx:Array>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
mx:dataProvider>
<mx:Array>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
mx:Array>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
mx:Array>
</mx:dataProvider>
</mx:List>
mx:dataProvider>
</mx:List>
mx:List>
<mx:dataProvider>
<mx:Array>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
<mx:Array>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
</mx:Array>
</mx:dataProvider>
</mx:List>
</mx:dataProvider>
</mx:List>
</mx:List>


脚本对象
因为脚本对象比较复杂,所以一般使用子节点的方式来设置属性的值,如:
<mynamespace:MyComponent>
<mynamespace:nameOfProperty>
<objectTypeprop1='val1'prop2='val2'/>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
mynamespace:nameOfProperty>
<objectTypeprop1='val1'prop2='val2'/>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
objectTypeprop1='val1'prop2='val2'/>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
mynamespace:nameOfProperty>
</mynamespace:MyComponent>
mynamespace:MyComponent>
<mynamespace:nameOfProperty>
<objectTypeprop1='val1'prop2='val2'/>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
<objectTypeprop1='val1'prop2='val2'/>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
</mynamespace:MyComponent>



脚本对象数组
<mynamespace:MyComponent>
<mynamespace:dataProvider>
<mx:Array>
<mynamespace:ListItemlabel='One'data='1'/>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
mynamespace:dataProvider>
<mx:Array>
<mynamespace:ListItemlabel='One'data='1'/>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
mx:Array>
<mynamespace:ListItemlabel='One'data='1'/>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
mynamespace:ListItemlabel='One'data='1'/>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
mynamespace:dataProvider>
</mynamespace:MyComponent>
mynamespace:MyComponent>
<mynamespace:dataProvider>
<mx:Array>
<mynamespace:ListItemlabel='One'data='1'/>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
<mx:Array>
<mynamespace:ListItemlabel='One'data='1'/>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
<mynamespace:ListItemlabel='One'data='1'/>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
<mynamespace:ListItemlabel='Two'data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
</mynamespace:MyComponent>



XML数据
<mynamespace:MyComponent>
<mynamespace:valuexmlns:a='http://www.example.com/myschema'>
<mx:XML>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
mynamespace:valuexmlns:a='http://www.example.com/myschema'>
<mx:XML>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
mx:XML>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
mynamespace:value>
</mynamespace:MyComponent>
mynamespace:MyComponent>
<mynamespace:valuexmlns:a='http://www.example.com/myschema'>
<mx:XML>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
<mx:XML>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
</mynamespace:value>
</mynamespace:MyComponent>
</mynamespace:MyComponent>



样式属性
主要进行组件的样式控制,如
<mx:TextAreaid='myText'text='helloworld'fontFamily='Tahoma'/>
//和下面的AS代码是等效的
myText.text='helloworld';
myText.setStyle('fontFamily','Tahoma');
//和下面的AS代码是等效的
myText.text='helloworld';
myText.setStyle('fontFamily','Tahoma');
myText.text='helloworld';
myText.setStyle('fontFamily','Tahoma');
myText.setStyle('fontFamily','Tahoma');
//和下面的AS代码是等效的
myText.text='helloworld';
myText.setStyle('fontFamily','Tahoma');
myText.text='helloworld';
myText.setStyle('fontFamily','Tahoma');
myText.setStyle('fontFamily','Tahoma');



编译标记
编译标记并不直接对应AS类或其属性,主要有:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值