ቂ
ቂ
ACTIONSCRIPT
™
3.0 Ꮰ
Ꮰ
©
2007 Adobe Systems Incorporated
。保留所有权利。
使用
ActionScript
™
3.0
组件
如果本指南是随包括最终用户协议的软件分发的,那么,本指南及其所描述的软件将按照该许可协议提供,而且必须遵照
该许可协议的条款来使用或复制。除非该许可协议允许,否则,未经
Adobe Systems Incorporated
书面许可,不得以任
何形式或任何方法 (电子、机械、录制或其它方法)对本指南中的任何部分进行复制、存储到检索系统中或者进行传播。
请注意,本指南中的内容受版权法保护,即使它不随包括最终用户许可协议的软件一起分发也是如此。
本指南的内容仅供参考,如有更改恕不另行通知,而且不应当被理解为
Adobe Systems Incorporated
的承诺。对于本指
南的信息内容中可能出现的任何错误或不确切之处,
Adobe Systems Incorporated
不承担任何责任。
请注意,您可能希望包括在您的项目中的现有插图或图像可能受版权法的保护。如果在未经授权的情况下将这些材料包括
到您的新作品中,则可能会侵害版权所有者的权利。请确保从版权所有者那里获得了任何必需的许可。
在范例模板中公司名称的任何引用都仅用于演示目的,而绝不涉及任何实际的组织。
Adobe
、
Adobe
徽标、
ActionScript
、
Flash
、
Flash Player
和
Flash Video
是
Adobe Systems Incorporated
在美国和
/
或其它国家 (地区)的注册商标或商标。
Macintosh
是
Apple Inc.
在美国和其它国家 (地区)的注册商标。
Windows
是
Microsoft Corporation
在美国和
/
或
其它国家 (地区)的注册商标或商标。其它所有商标都是其各自所有者的财产。
本产品包括
Apache Software Foundation (http://www.apache.org/)
开发的软件。由
Fraunhofer IIS
和
Thomson
Multimedia (http://www.iis.fhg.de/amm/)
许可的
MPEG Layer-3
音频压缩技术。无法使用软件中的
MP3
压缩音频
来进行实时广播。如果您需要
MP3
解码器来进行实时广播,请自行负责获取此
MP3
技术许可。语音压缩和解压缩技术
已得到
Nellymoser, Inc. (www.nellymoser.com)
的许可。
Flash CS3
视频采用了
On2 TrueMotion
视频技术。
©
1992-2005 On2 Technologies, Inc.
保留所有权利。
http://www.on2.com
。本产品包括
OpenSymphony Group
(http://www.opensymphony.com/)
开发的软件。
Sorenson Spark
™
视频压缩和解压缩技术由
Sorenson Media, Inc.
授权。
Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA
。
美国政府最终用户须知。按照
48 C.F.R.
§
2.101
中定义的条款,由 “商业计算机软件”和 “商业计算机软件文档”组
成的软件和文档是 “商业项目”,
48 C.F.R.
§
12.212
或
48 C.F.R.
§
227.7202
中也具有此类条款 (如果适用)。与
48 C.F.R.
§
12.212
或
48 C.F.R.
§§
227.7202-1
到
227.7202-4
(如果适用)保持一致,商业计算机软件和商业计算机
软件文档将以如下方式授权给美国政府最终用户:
(a)
仅作为商业项目
(b)
仅具有依照本协议中的条款和条件授予所有其
他最终用户的权利。依据美国版权法保留未公布的权限。
Adobe Systems Incorporated, 345 Park Avenue, San Jose,
CA 95110-2704, USA
。对于美国政府最终用户,
Adobe
同意遵守所有适用的平等机会法规,其中包括 (如果适用的
话)
Executive Order 11246
(修订版)、
1974
年的
Vietnam Era Veterans Readjustment Assistance Act
第
402
部
分
(38 USC 4212)
、
1973
年
Rehabilitation Act
(修订版)第
503
部分的规定以及
41 CFR
中第
60-1
到
60-60
、
60-250
和
60-741
部分的规则。前一句中提到的确认性行动条款和规则可以引用至本协议。
3
目
录
简介
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
目标读者 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
系统要求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
关于本文档 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
印刷惯例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
本手册中使用的术语 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
其它资源 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
第
1
章
:
关于
ActionScript 3.0
组件
. . . . . . . . . . . . . . . . . . . . . . . . . 15
使用组件的优点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
组件类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
在文档中添加和删除 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
删除组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
查找版本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
ActionScript 3.0 事件处理模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
一个简单的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
应用程序的设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
创建 Greetings 应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
运行后续示例. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
第
2
章
:
使用组件
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
组件体系结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
ActionScript 3.0 基于 FLA 的组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
基于 SWC 的组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
ActionScript 3.0 组件 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
使用组件文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
组件文件的存储位置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
组件源文件的存储位置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
组件源文件和类路径 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
修改组件文件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
调试组件应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
设置参数和属性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
在 ActionScript 中设置组件属性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
4 目 录
库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
调整组件大小 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
实时预览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
处理事件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
关于事件侦听器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
关于事件对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
使用显示列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
向显示列表添加组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
移动显示列表中的组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
从显示列表中删除组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
使用 FocusManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
使用基于 List 的组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
使用 DataProvider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
创建 DataProvider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
使用 dataProvider 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
使用 ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
操作 DataProvider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
使用 CellRenderer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
设置单元格格式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
定义自定义 CellRenderer 类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
CellRenderer 属性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
为 DataGrid 对象的列应用 CellRenderer. . . . . . . . . . . . . . . . . . . . . . . . . . . 65
为可编辑单元格定义 CellRenderer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
将图像、 SWF 文件或影片剪辑用作 CellRenderer . . . . . . . . . . . . . . . . . . 66
使组件具有辅助功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
第
3
章
:
使用
UI
组件
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
使用 Button 组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
与 Button 进行用户交互. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Button 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
创建具有 Button 组件的应用程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
使用 CheckBox 组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
与 CheckBox 进行用户交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
CheckBox 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
创建具有 CheckBox 组件的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
使用 ColorPicker 组件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
与 ColorPicker 组件进行用户交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
ColorPicker 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
创建具有 ColorPicker 组件的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
使用 ComboBox 组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
与 ComboBox 组件进行用户交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
ComboBox 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
创建具有 ComboBox 组件的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
目 录 5
使用 DataGrid 组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
与 DataGrid 组件进行用户交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
DataGrid 参数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
创建具有 DataGrid 组件的应用程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .84
使用 Label 组件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
与 Label 组件进行用户交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Label 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
创建具有 Label 组件的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
使用 List 组件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
与 List 组件进行用户交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
List 参数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
创建具有 List 的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
使用 NumericStepper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95
用户与 NumericStepper 的交互. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95
NumericStepper 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
创建具有 NumericStepper 的应用程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
使用 ProgressBar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
用户与 ProgressBar 的交互. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
ProgressBar 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .99
创建具有 ProgressBar 的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .99
使用 RadioButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
用户与 RadioButton 的交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
RadioButton 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
创建具有 RadioButton 的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
使用 ScrollPane 组件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
用户与 ScrollPane 的交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
ScrollPane 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
创建具有 ScrollPane 的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
使用 Slider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
用户与 Slider 组件的交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Slider 参数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
创建具有 Slider 的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
使用 TextArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113
用户与 Te x t A r e a 的交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
Te x t A r e a 参数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
创建具有 Te x t A r e a 的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
使用 TextInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116
用户与 Te x t I n p u t 的交互 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Te x t I n p u t 参数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
创建具有 Te x t I n p u t 的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
使用 TileList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
与 TileList 的用户交互. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
TileList 参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121
创建具有 TileList 的应用程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121