前一阵子公司安排学习Flex,大概花了一周的时间看了一下书并且动手做了一些小实例,现在比较忙,怕以前学的东西不好找,所以这里做一点点笔记吧。
一。简介
一个Flex应用程序有ActionScript和MXML两种语言代码组成。从3.0开始ActionScript已经从
基于原型脚本语言进化到完全面向对象的,强类型的符合ECMAScript标准的脚本语言。
MXML则是一种标记语言,非常类似于我们所熟悉的超文本标记语言(HTML),扩展标记语
言(XML)。
如何把MXML和ActionScript相互关联起来呢?对于编译器来说,解析这两种语法后最终被
翻译成同一个对象,比如:
Java代码
和
Java代码
产生的是同一个对象,两者的主要不同是,ActionScript创建的对象(上面第二个例子)除了
Button就没有别的了,而MXML中创建的对象将Button添加到包含MXML代码的任何组件
上。Flex框架根据MXML中的对象描述来调用构造函数,然后将其添加到父对象上或设置其
为父对象的某个属性。我们可以在mxml文件里面点击<mx:Button..进去,就会看到Button.as文件,在里面可以看到它的结构,有个构造函数:
Java代码
一。简介
一个Flex应用程序有ActionScript和MXML两种语言代码组成。从3.0开始ActionScript已经从
基于原型脚本语言进化到完全面向对象的,强类型的符合ECMAScript标准的脚本语言。
MXML则是一种标记语言,非常类似于我们所熟悉的超文本标记语言(HTML),扩展标记语
言(XML)。
如何把MXML和ActionScript相互关联起来呢?对于编译器来说,解析这两种语法后最终被
翻译成同一个对象,比如:
Java代码
<mx:Button id="btn" label="My Button" height="100"/>
和
Java代码
var
btn:Button = new
Button();
btn.label = "My Button" ;
btn.height = 100;
产生的是同一个对象,两者的主要不同是,ActionScript创建的对象(上面第二个例子)除了
Button就没有别的了,而MXML中创建的对象将Button添加到包含MXML代码的任何组件
上。Flex框架根据MXML中的对象描述来调用构造函数,然后将其添加到父对象上或设置其
为父对象的某个属性。我们可以在mxml文件里面点击<mx:Button..进去,就会看到Button.as文件,在里面可以看到它的结构,有个构造函数:
Java代码
/**
* Constructor.
*/
public function Button()
{
super();
mouseChildren = false;
// Register for player events.
addEventListener(MouseEvent.ROLL_OVER, rollOverHandler);
addEventListener(MouseEvent.ROLL_OUT, rollOutHandler);
addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
addEventListener(MouseEvent.CLICK, clickHandler);
}