Flex开发 入门宝典 + 实例
第1章 Flex基础入门(理论)

3. MXML语言简介 语言简介
Flex程序由以下三种类型的文件组成
以mxml后缀的程序文件
MXML语言,是专用于Flex程序中,描述界面表现的一种XML标记语言 可用它来管理程序的整体布局,控制组件的样式和外观,也可以构建非可视化 对象
以as为后缀的ActionScript文件
ActionScript 是针对 Adobe Flash Player 运行时环境的编程语言 它在 Flash 内容和应用程序中实现了交互性、数据处理以及其它许多功能,是 一种面向对象的编程语言 MXML标签与ActionScript类或者类中的属性是相对应的
1.2 什么是Flex 什么是
Flex是一个针对企业级富互联网应用的表示层解决方案 Flex是一种应用程序框架,由一系列的技术和软件产品组成,比如集成开 发环境、程序开发套件、数据库服务器软件等 通过Flex技术,开发人员可将RIA程序编译成为Flash文件,为Flash Player所接受 一个完整的Flex程序由MXML代码和ActionScript代码组成
执行Java Script代码,关闭浏览器
2.4 发布源代码
Adobe Flash Builder默认情况下,不发布源代码,即在浏览页面时通过 “查看” →”源代码”命令并不能查看到Flex源代码 可以使用”导出发行版“命令发布Flex源代码
单击工具栏上的 图标,弹出对话框 单击“完成”按钮完成“导出发行版”功能。切换到代码视图,Adobe Flash Builder会在flexapp.mxml文件中添加“viewSourceURL”属性 运行Flex程序,在浏览器单击右键会弹出“查看源代码“菜单
3.2 自定义MXML组件 自定义 组件
自定义组件提高了代码的重用性,降低了维护的难度 一般将程序中功能独立或者需要反复使用的部分定义成一个用户组件, 例如关闭浏览器按钮三个应用中会频繁使用,可将其作为自定义组件 在Flex中自定义组件的步骤 <?xml version="1.0" encoding="utf-8"?>
Flex从入门到精通_第6章

6.2.3 改变按钮外观
• • • • • 如果按钮控件是激活状态,它就可以有下列行为: 当鼠标指向按钮,按钮控件显示rollover状态。 当鼠标点击按钮,按钮控件显示按下(pressed)状态。 如果鼠标移出按钮区域,按钮控件恢复其原始状态。 如果按钮控件禁用状态,就显示为禁用外观,并对所有用 户行为不产生响应。在Flex中,可以有不同的图像来对应 不同的外观属性,每个属性对应不同的按钮状态。 上(Up):鼠标不在按钮上,也就是按钮的原状。 下(Down):鼠标按下按钮。 上方(Over):鼠标指在按钮上。 禁用(Disabled):按钮处在禁用状态。
6.1.6 控件定位(Positioning Control)
• 控件放置在容器中时,将其放置在什么位置,就是对控件 的定位。通过对控件的定位,可以调整页面布局。当编程 者将控件放置在容器内,多数容器可以自动确定子类的位 置。画布(Canvas)容器对子类进行绝对值定位。应用 (Application)容器、面板(Panel)容器可选择绝对值 定位或相对值定位。 • 对控件的绝对值定位,就是设定其x、y坐标属性,即定义 在容器中水平和垂直像素坐标。这里,坐标原点(0,0)就 是容器的左上角。在面板容器中,添加了一个按钮控件。 按钮的位置定义为距离面板左上角横坐标20像素,纵坐标 20像素的位置。
6.7 链接按钮控件(LinkButton Control) • 链接按钮控件是一个单行的文本超链接,类似与 HTML的超链接<a href=””>。单击文本链接就可 以打开一个新的浏览器窗口或进行某个操作。
6.7.1 链接按钮控件概述
• 在MXML中,使用<mx:LinkButton>标签来定义链接 按钮控件。链接按钮控件不仅可以是文本的链接, 也可以是使用图标做链接当鼠标在链接按钮上时, 链接按钮颜色变化的效果。
Flex

第三章Flex基础Flex是基于组件来进行开发的,为了更有效率地设计和开发应用程序,你应该熟悉这些开发模式以及操作步骤。
第一节创建一个Flex应用程序应用程序模型Flex创建一个应用程序时,你使用组件(容器/containers和控件/controls)来描述用户的操作界面。
例如,容器可以是一个用来进行数据输入的表格容器,如一个盒框/Box或一个栅格/Grid;而控件就是该表格中的元素,如一个按钮/Button或文本输入栏/Text Input field。
举个例子,在随后的图例中显示了两种不同的盒子容器,它们分别包含了三个按钮控件和一个ComboBox控件:Flex的MVC模型为了增强系统的复用性和可维护性,应该采用具有良好体系架构的模型,即Model-View-Controller(MVC)。
1. 模型/Model组件封装了数据和与数据相关的行为。
2. 视图/View组件定义了应用程序的用户界面。
3. 控制器/Controller组件则负责处理程序中的数据连接。
web服务器的运用通常地,会涉及到的web服务器类型有:1. 纯web服务器,它们仅将用户的请求回复一个简单的静态HTML页面。
在这种情况下,你需要将Flex应用程序的SWF文件嵌入到一个HTML页面中。
2. web应用服务器,如JRun、ColdFusion或者PHP,它们可以动态地生成页面。
在这种情况下,你将使用到与服务器技术相关的库,并动态地处理它们的内容。
3. J2EE应用服务器或servlet容器。
向一个J2EE应用服务器或servlet容器发出请求,如JRun、Tomcat或WebSphere,通常你需要使用Flex Data Services。
程序开发的通常步骤开发Flex应用程序,通常会采用如下的步骤进行:1. 在一个文本编辑器或集成开发环境(IDE)中,如Adobe Flex Builder、Eclipse或IntelliJ 中插入MXML根标签。
FLEX培训PPT,FLEX简介学习,简单例子

Installing a text editor or IDE (SDK
users only)
• If we installed the Flex SDK, we don’t have Flex Builder—so we need to pick some other text editor or IDE to use. Chances are you already have a favorite IDE or text editor. There are many good text editors (Emacs, TextMate, vi) and IDEs (Code Gear’s 3rdRail, NetBeans, IDEA, and Aptana + RadRails) to choose from. In this
rails2
• Figure 1.1 • Rails provides
a standard three-tier • architecture (presentation tier, model tier, • persistence tier) as well as a Model-View• Controller architecture.
• 出现了简单的helloword,背景css都可以自 行编写
app\controllers\hello_controller.rb
• class HelloController < ApplicationController • def sayhello • render :text => "hello world!" • end • End • 简单的一个controller写法,让服务器返回客户端的内容
《Flex 4 0 RIA开发宝典》读书笔记模板

第11章 Flex 1
可视化组件基 础
2
第12章 Flex 常用组件概览
3
第13章 Flex 程序设计进阶
4
第14章 Flex 模块化编程
5
第15章图表组 件
第11章 Flex可视化组件基础
11.1 Flex组件概述 11.2可视化组件的类结构 11.3 Flex组件生命周期 11.4 Flex可见组件 11.5 Libray和Definition标签 11.6小结
第15章图表组件
15.1图表组件开发基础图表数据 15.2图表组件常用属性 15.3图表事件 15.4复合坐标轴 15.5图表组件效果 15.6小结
1
第16章第一个 Flex程序
第17章使用多 2
种方法创建应 用程序
3 第18章
ActionScrip t 3.0程序结 构应用实例
4
第19章 Math 类应用实例
谢谢观看
第21章 String类应用实例
21.1使用字符串方法分割字符串 21.2使用字符串方法查找字符串 21.3使用字符串方法制作“打字效果”实例 21.4使用字符串方法制作“逐字逐句”实例 21.5小结
第22章 Date类和Timer类应用实例
22.1设计一个数字式电子表 22.2设计一个指针式盘表 22.3制作一个秒表计时器 22.4小结
第32章 Flex 开发企业局域 应用实例解析
第33章利用 Flex和PHP创 建站视频发布
系统
第32章 Flex开发企业局域应用实例解析
32.1实例工程设置 32.2 Spark Intranet SampIe App应用 32.3数据/服务视图、测试选项视图和Getter/Setter方法自动生成 32.4使用络监视器 32.5小结
Flex布局-实例

Flex布局-实例<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>flex布局实例</title><style>.box{display: flex;width: 100px;height: 100px;background-color: black;border-radius: 30px;padding: 7px;}.item{width: 30px;height: 30px;background-color: blanchedalmond;border-radius: 50%;}.it1{justify-content: center;}.it2{justify-content: flex-end;}.it3{align-items: center;}.it4{justify-content: center;align-items: center;}.it5{justify-content: center;align-items: flex-end;}.it6{justify-content: flex-end;align-items: flex-end;}/* ----------------双项⽬------------------- */.two1{justify-content: space-between;/*两端对齐,项⽬之间的间隔都相等。
Flex从入门到精通 第9章
9.3.5 使用Effect.target和Effect.targets属性应用行为效果
在Flex中,可以使用Effect.target和 Effect.targets属性来调用行为效果的目标组件, 特别是在使用play()方法来调用行为效果时。在 MXML中,Effect.target用来调用一个单一的目标 组件。而用Effect.targets来定义一组目标组件。 示例代码如下。在<mx:Zoom>标签中,绑定属性 target的目标组件为按钮控件, target="{myButton2}"。然后,在<mx:Button>标 签上,定义click行为为显示Zoom的行为效果。
9.1.1 运用行为控制(Apply behavior)
编程者需要使用MXML与ActionScript两者来建立 和运用组件的行为效果。在MXML中,可以将行为 效果和触发器联合起来。例如,在下面的代码片 段中,首先定义行为效果WipeLeft其id标识符数 值为“myWL”,并且在1000毫秒中从开始到结束 的。 <mx:WipeLeft id="myWL" duration="1000"/>
9.4.2 使用嵌入的字体显示行为效果
一些行为控制融合、褪色和旋转只能对嵌入的文本产生作 用。如果在带有系统字体的控件上使用这些效果,文本不 会发生任何改变。下面的示例9-8中,带有了两个标签控件, 一个使用嵌入的文字,一个是系统文字。当在这两个标签 控件上应用褪色的行为控制时,系统文字不发生任何改变。 在示例中,首先在ActionScript中定义嵌入的字体 “myFont”,代码如下所示。 @font-face { @font src:local("Arial"); font-family: myFont; }
Flex学习大全
1.1 Flex可视化组件开发-1
mx.,collections.ICollectionView接口和mx.collections.IList接口 2.3.2 Flex集合类特征
2.3.2.1 确保数据源更改后数据及时更新. 2.3.2.2 提供了运行远程数据源的分页机制. 2.3.2.3 提供了数据源中的数据操作,可以通过index修改数据源中的数据,而不用关心数据源的具体实现,如 Array和XML 2.3.2.4 支持单独数据集合作为多个可视化组件的数据源.(一个ArrayCollection可以显示在多个组件中); 2.3.2.5 使用集合类的方法可以访问数据源中的数据.(如,可以访问sql,mysql,db2,oralce,access,sybase) 2.3.3 Flex可视化组件均支持dataProvider属性: 2.3.3.1 例:
1.1 Flex可视化组件开发-1
2.5 容器组件,可视化组件的结合形式 <mx:Application xmlns:mx="/2006/mxml" layout="absolute">
Flex从入门到精通 第7章
7.1.3 Flex的分类
Flex容器按其使用方式又可分为两类:布局 (Layout)和导航(Navigator)。 1.布局容器(Layout Container) 这类容器用于对子类组件定位和限定尺寸。 2.导航容器(Navigator Container) 这类容器用于控制用户的对多个子类容器的导航、 转移。
7.4.3 折叠导航容器(Accordion navigator Container)
在MXML中,使用<mx: Accordion > 标签定义折叠导航容器。折叠导航容 器建立一系列的面板,依次叠加起来。每个面板的头就是它的导航按钮。 点击任何一个按钮就会打开相应的面板。折叠导航容器有一个非常好的应 用实例。在HTML网页中,购物往往需要几个页面来完成。用户填写完一个 页面,提交之后,再填写下一个页面,直到完成。折叠导航容器,可以将 几个页面分置在其几个单独面板中,填写完成后,统一提交。也可以在不 同的面板分置不同种类的商品目录。 在折叠容器中,每个层面只能容纳一个子类,其语法句式如下: <mx:Accordion 属性 样式 事件 > 子类标签 </mx:Accordion >
7.4 导航容器(Navigator Container)
导航容器是用来控制一组子类容器的移动,导航。 导航容器只定义子类容器的顺序,不定义子类容 器的布局和定位。导航容器中的子类,必须是容 器,而不是控件组件。 Flex提供了以下的导航容器: 视窗堆栈导航容器 标题头导航容器 折叠导航容器
7.3.2 盒子,水平盒子,垂直盒子布局容器(Box, HBox, VBox Layout Container)
盒子容器的是在水平或垂直方向上按序排列子类 组件。其语法句式如下: <mx:Box 属性 样式 > 子类标签 </mx:Box>
Flex布局做出自适应页面(语法和案例)
Flex布局做出⾃适应页⾯(语法和案例)Flex布局简介Flex英⽂为flexiable box,翻译为弹性盒⼦,Flex布局即弹性布局。
Flex布局为盒⼦模型提供了很⼤的灵活性,任何⼀个容器都可以指定为Flex布局,设置⽅法为:.box{display: flex;}⾏内元素使⽤Flex布局.box{display: inline-flex;}在webkit内核的浏览器上必须加上webkit前缀.box{display: flex;display: -webkit-flex;}注意:使⽤Flex布局之后,⾥⾯的float、clear、vertical-align属性将失效。
Flex布局中的基本概念采⽤ Flex 布局的元素,称为 Flex 容器(flex container),简称"容器"。
它的所有⼦元素⾃动成为容器成员,称为 Flex 项⽬(flex item),简称"项⽬"。
容器默认存在两根轴:⽔平的主轴(main axis)和垂直的侧轴(cross axis)。
主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end;侧轴的开始位置叫做cross start,结束位置叫做cross end。
项⽬默认沿主轴排列。
单个项⽬占据的主轴空间叫做main size,占据的侧轴空间叫做cross size。
容器的属性1、flex-driection2、flex-wrap3、flex-flow4、justify-content5、align-items6、align-content1、flex-driection设置项⽬的排列⽅向,默认为rowflex-driection: row | row-reverse | column | column-reverse当设置为flex-driection: row,效果:当设置为flex-driection: row-reverse,效果:当设置为flex-driection: column,效果:当设置为flex-driection: column-reverse,效果:如下代码直接复制保存为html⽂件即可以查看效果:<style type="text/css">.box{display: flex;display: -webkit-flex;/*⽔平⽅向,左端对齐*/flex-direction: row;/*⽔平⽅向,右端对齐*//*flex-direction: row-reverse;*//*垂直⽅向,顶部对齐*//*flex-direction: column;*//*垂直⽅向,底部对齐*//*flex-direction: column-reverse;*/background: #999;width: 100%;}.box span{margin: 10px 10px;padding: 10px;background: #ff0;width: 50px;}</style><div class="box"><span>你好1</span><span>你好2</span><span>你好3</span><span>你好4</span></div>2、flex-wrap设置项⽬是否在⼀条线上,默认为nowrapflex-wrap: wrap | nowrap | wrap-reverse当设置为flex-wrap: wrap,效果:当设置为flex-wrap: nowrap,效果(不换⾏,默认会缩放):当设置为flex-wrap: wrap-reverse,效果(第⼀⾏在下⽅):如下代码直接复制保存为html⽂件即可以查看效果:<style type="text/css">.box{display: flex;display: -webkit-flex;/*换⾏*//*flex-wrap: wrap;*//*不换⾏,默认*//*flex-wrap: nowrap;*//*换⾏,第⼀⾏在下⽅*//*flex-wrap: wrap-reverse;*/background: #999;width: 100%;}.box span{margin: 10px 10px;padding: 10px;background: #ff0;width: 50px;}</style><div class="box"><span>你好1</span><span>你好2</span><span>你好3</span><span>你好4</span><span>你好5</span><span>你好6</span><span>你好7</span></div>3、flex-flow属性是flex-direction属性和flex-wrap属性的简写形式,默认值为row nowrap4、justify-content属性定义项⽬在主轴上的对齐⽅式,默认值为flex-startjustify-content: flex-start | flex-end | center | space-between | space-around当设置为justify-content: flex-start,效果:当设置为justify-content: flex-end,效果:当设置为justify-content: center,效果:当设置为justify-content: space-between,效果:当设置为justify-content: space-around,效果:如下代码直接复制保存为html⽂件即可以查看效果:<style type="text/css">.box{display: flex;display: -webkit-flex;/*默认,项⽬左对齐*/justify-content: flex-start;/*项⽬右对齐*//*justify-content: flex-end;*//*项⽬居中对齐*//*justify-content: center;*//*项⽬两端对齐*//*justify-content: space-between;*//*每个项⽬两侧的间隔相等*//*justify-content: space-around;*/background: #999;width: 100%;}.box span{margin: 10px 10px;padding: 10px;background: #ff0;width: 50px;}</style><div class="box"><span>你好1</span><span>你好2</span><span>你好3</span><span>你好4</span><span>你好5</span><span>你好6</span><span>你好7</span></div>5、align-items属性定义项⽬在纵轴上的对齐⽅式,默认值为stretch,适⽤于项⽬在纵轴上⾼度不⼀样的情况,为了更好的看到效果,我为项⽬添加了⼀些样式align-items: flex-start | flex-end | center | baseline | stretch当设置为align-items: flex-start,效果:当设置为align-items: flex-end,效果:当设置为align-items: center,效果:当设置为align-items: baseline,效果:当设置为align-items: stretch,效果:如下代码直接复制保存为html⽂件即可以查看效果:<style type="text/css">.box{display: flex;display: -webkit-flex;/*纵轴的顶部对齐*//*align-items: flex-start;*//*纵轴的底部对齐*//*align-items: flex-end;*//*纵轴的中点对齐*//*align-items: center;*//*项⽬的第⼀⾏⽂字的基线对齐*//*align-items: baseline;*//*默认对齐⽅式,如果项⽬未设置⾼度或设为auto,将占满整个容器的⾼度*/align-items: stretch;background: #999;width: 100%;}.box span{margin: 10px 10px;padding: 10px;background: #ff0;width: 50px;}.box span:nth-of-type(2n){height: 80px;padding-top: 20px;}</style><div class="box"><span>你好1</span><span>你好2</span><span>你好3</span><span>你好4</span><span>你好5</span><span>你好6</span><span>你好7</span></div>6、align-content属性定义了多根轴线的对齐⽅式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DividedBox, HDividedBox, and VDividedBox DividedBox容器类似与 容器类似与Box容器,用来横向或者纵向的放置子组件,不同的是 容器, 容器类似与 容器 用来横向或者纵向的放置子组件, DividedBox用显示的间隔物将自组件分割开,你可以拖动间隔物来扩大或缩小每个子 用显示的间隔物将自组件分割开, 用显示的间隔物将自组件分割开 组件所占的空间, 相与DivideBox的区别与 的区别与HBox和 组件所占的空间,HDividedBox和VDividedBox相与 和 相与 的区别与 和 VBox相对与 相对与Box的区别一样。 的区别一样。 相对与 的区别一样 Form, FormHeading, and FormItem Form是Web应用最为常见的容器了,常见的有用户注册,帐单信息等。 应用最为常见的容器了, 是 应用最为常见的容器了 常见的有用户注册,帐单信息等。 FormHeading用来区分每一组 用来区分每一组Form信息,如用户注册的过程中,可以指定 个 信息, 用来区分每一组 信息 如用户注册的过程中,可以指定2个 FormHeading分别是必添项目和选添项目。FormItem是Form中具体的某一个项目, 分别是必添项目和选添项目。 中具体的某一个项目, 分别是必添项目和选添项目 是 中具体的某一个项目 包含一个Label和若干个控件。 和若干个控件。 包含一个 和若干个控件 Grid Grid容器用来以表格的形式放置组件,好比 容器用来以表格的形式放置组件, 中没有Border的Table。Grid容器的 容器用来以表格的形式放置组件 好比Html中没有 中没有 的 。 容器的 每一个单元格(cell)都可以放置 个或 个子组件,如果想要在一个单元格中放置多个控 都可以放置0个或 个子组件, 每一个单元格 都可以放置 个或1个子组件 那么就在这个单元格中再多加一个容器。 中使用GridRow来创建行,用 来创建行, 件,那么就在这个单元格中再多加一个容器。Grid中使用 中使用 来创建行 GridItem来创建单元格。类似与 来创建单元格。 来创建单元格 类似与Html的table,你也可以使用 的 ,你也可以使用rowSpan,colSpan来合 来合 并单元格。 并单元格。 Panel Panel容器是一个比较常用的容器,包含标题 容器是一个比较常用的容器, 区域, 容器是一个比较常用的容器 包含标题(title)区域,放置子组件的容器 区域 放置子组件的容器(content) 区域,以及边框(border)。content区域有 种形式,分别是横向布局(horizontal),纵 区域,以及边框 。 区域有3种形式, 分别是横向布局 , 区域有 种形式 向布局(vertical),绝对坐标布局 会很普遍的与Form结合起来使用, 结合起来使用, 向布局 ,绝对坐标布局(absolute)。Panel会很普遍的与 。 会很普遍的与 结合起来使用 当然还有前面提到的ControlBar组件也是 组件也是Panel容器中很常用的一个子容器。 容器中很常用的一个子容器。 当然还有前面提到的 组件也是 容器中很常用的一个子容器
•
建立Flex项目时需注意 项目时需注意 建立
要一致
Introducing MXML and ActionScript • MXML ML是一种基于 是一种基于XML的标记语言,在Flex技术中,MXML用于设计用户界面,实现 的标记语言, 技术中, 用于设计用户界面, 是一种基于 的标记语言 技术中 用于设计用户界面 表现层。 的功能是基本一致的, 丰富的 Flex表现层。从作用上说,MXML和HTML的功能是基本一致的,都是设计用 表现层 从作用上说, 和 的功能是基本一致的 户界面,但是MXML提供了较 提供了较HTML更为丰富的界面组件,并且在开发上 更为结构化, 更为丰富的界面组件, 更为结构化, 户界面,但是 提供了较 更为丰富的界面组件 条理更加清晰。 的编写同样类似于HTML,它通过标签来定义和描述组件。这 条理更加清晰。MXML的编写同样类似于 的编写同样类似于 ,它通过标签来定义和描述组件。 点可以从本文前面部分体会到。 的编程模型中, 点可以从本文前面部分体会到。在MXML的编程模型中,需要注意的主要有三点: 的编程模型中 需要注意的主要有三点: 1、<mx:Application></mx:Application>标记 、 标记 2、<mx:Script></mx:Script>标记 、 标记 3、用户自定义可视化组件标记 、 第一点就不用多说了,这是每一个MXML应用必须具备的配置节点,然后便上 第一点就不用多说了,这是每一个 应用必须具备的配置节点, 应用必须具备的配置节点 <mx:Script></mx: Script>标记,我们可以通过 标记, 标记 我们可以通过<mx:Script></mx:Script>标签来嵌 标签来嵌 详见本本前面部分的资料图), ),除了在里面直接嵌入 入ActionScript代 码(详见本本前面部分的资料图),除了在里面直接嵌入 代 ActionScript代码外,我们还可以引入外部 代码外, 代码外 我们还可以引入外部ActionScript类/接口等文件 (.as),这点和 类 接口等文件 这点和 Java的编程模型是一样的,通过 的编程模型是一样的, 接口的全限定名d的方式导入相应的接口或 的编程模型是一样的 通过Import 类/接口的全限定名 的方式导入相应的接口或 接口的全限定名 是对象。最后便是用户自定义组件了,这个很简单就可以理解,这里就不用多说了, 是对象。最后便是用户自定义组件了,这个很简单就可以理解,这里就不用多说了, 便是用户根据实际需要而定义的组件。 如<mx: Button></mx:Button>便是用户根据实际需要而定义的组件。 便是用户根据实际需要而定义的组件
Flex培训
• Eclipse IDE • Buliding Flex SDK Applications with Ant • Introduction to Flex Applications • -Introducing MXML and ActionScript • -Handing Flex in Data
• •
• • • •
产生的是同一个对象,两者的主要不同是, 创建的对象(上面第二个例子 产生的是同一个对象,两者的主要不同是,ActionScript创建的对象 上面第二个例子 创建的对象 上面第二个例子) 除了 Button就没有别的了,而MXML中创建的对象将 就没有别的了, 中创建的对象将Button添加到包含 添加到包含MXML代码的任何 就没有别的了 中创建的对象将 添加到包含 代码的任何 组件 上。Flex框架根据 框架根据MXML中的对象描述来调用构造函数,然后将其添加到父对象上或 中的对象描述来调用构造函数, 框架根据 中的对象描述来调用构造函数 设置其 为父对象的某个属性。 为父对象的某个属性。
-Creating Custom Components with ActionScriptS Using Flex Libraries Flex and Spring Integration Architecture
开发环境Flex Builder 开发环境
• • • をインストールする。 1、まず、JDKをインストールする。 まず、 をインストールする 2、Eclipse 3.4.2フォルダを ¥へコピーする フォルダをD:¥ フォルダを フォルダのFlexBuilder_EclipsePlugins.exeというファイルをダブルク 3、Flex Builderフォルダの フォルダの というファイルをダブルク リックして、以下の画面を リックして、以下の画面を呼び出す。
•
7、次へのボタンをクリックする。 へのボタンをクリックする。
•
8、この画面の選択ボタンをクリックして、以下の画面を呼び出す。 この画面の選択ボタンをクリックして、以下の画面を 画面 ボタンをクリックして
•
フォルダを選 9、ローカルでEclipseフォルダを選び、okボタンをクリックする ローカルで フォルダを ボタンをクリックする
10、 へのボタンをクリックして、しばらく待ちして、インストールを完了する。 10、次へのボタンをクリックして、しばらく待ちして、インストールを完了する。 完了する
Flex介绍 介绍
• 一个Flex应用程序有 应用程序有ActionScript和MXML两种语言代码组成。从3.0开始 两种语言代码组成。 一个 应用程序有 和 两种语言代码组成 开 ActionScript已经从基于原型脚本语言进化到完全面向对象的,强类型的符合 已经从基于原型脚本语言进化到完全面向对象的, 已经从基于原型脚本语言进化到完全面向对象的 ECMAScript标准的脚本语言。 标准的脚本语言。 标准的脚本语言 MXML则是一种标记语言,非常类似于大家所熟悉的超文本标记语言(HTML),扩展标 则是一种标记语言,非常类似于大家所熟悉的超文本标记语言 则是一种标记语言 , 记语言(XML)。 记语言 。 如何把MXML和ActionScript相互关联起来呢?对于编译器来说,解析这两种语法后 如何把 和 相互关联起来呢?对于编译器来说, 相互关联起来呢 最终被翻译成同一个对象,比如: 最终被翻译成同一个对象,比如: <mx:Button id="btn" label="My Button" height="100"/> 和 var btn:Button = new Button(); bel = "My Button" ; btn.height = 100;
Flex控件 控件
• flex控件分为 种,一种是布局控件,另外一种是元素控件。 控件分为2种 一种是布局控件,另外一种是元素控件。 控件分为 Canvas Canvas容器绘置一个长方形的区域用来放置子组件(其他容器或者控件),与其他容 容器绘置一个长方形的区域用来放置子组件( ),与其他容 容器绘置一个长方形的区域用来放置子组件 其他容器或者控件), 器不同, 子组件的位置必须指定绝对坐标或使用约束条件布局。 器不同,Canvas子组件的位置必须指定绝对坐标或使用约束条件布局。 子组件的位置必须指定绝对坐标或使用约束条件布局 Box, HBox, and VBox Box容器用来横向或者纵向的放置子组件,使用 容器用来横向或者纵向的放置子组件, 容器用来横向或者纵向的放置子组件 使用direction属性来决定是横向布局还是 属性来决定是横向布局还是 纵向布局。 就是指定了direction属性的 属性的Box。 纵向布局。HBox,VBox就是指定了 就是指定了 属性的 。 ControlBar ControlBar容器一般与 容器一般与Panel容器或者 容器或者TitleWindow容器配合使用,比如在 容器配合使用, 容器一般与 容器或者 容器配合使用 比如在Panel容器 容器 的底部放置一个ControlBar作为 作为Footer。 的底部放置一个 作为 。 ApplicationControlBar ApplicationControlBar容器一般起到导航的作用,作用于整个应用程序的运行期间, 容器一般起到导航的作用, 容器一般起到导航的作用 作用于整个应用程序的运行期间, 比如我们使用的Word,Excel顶部用来放置工具栏和菜单栏的区域。 比如我们使用的 顶部用来放置工具栏和菜单栏的区域。 顶部用来放置工具栏和菜单栏的区域 ApplicationControlBar容器有 种模式,分别是 容器有2种模式 分别是Docked模式和 模式和Normal模式。 模式。 容器有 种模式, 模式和 模式 Docked模式将 模式将ApplicationControlBar容器一直显示的停靠在应用程序的顶部,并且 容器一直显示的停靠在应用程序的顶部, 模式将 容器一直显示的停靠在应用程序的顶部 自动将宽度调整为应用程序的宽度。 模式可以将ApplicationControlBar容器 自动将宽度调整为应用程序的宽度。Normal模式可以将 模式可以将 容器 以任意的大小放置在应用程序的任何位置。 以任意的大小放置在应用程序的任何位置。