flash as3 programming.pdf

789
Программирование на ADOBE ® ACTIONSCRIPT ® 3.0

Upload: dmgdr2020

Post on 02-Jan-2016

294 views

Category:

Documents


7 download

DESCRIPTION

Flash action script

TRANSCRIPT

  • ADOBE ACTIONSCRIPT 3.0

  • Adobe Systems Incorporated, 2008. . Adobe ActionScript 3.0 Adobe Flash , , , , . , - (, , ..) Adobe Systems Incorporated. , , . , Adobe Systems Incorporated. Adobe Systems Incorporated ., , , . . . .Adobe, the Adobe logo, Adobe AIR, ActionScript, Flash, Flash Lite, Flex, Flex Builder, MXML, and Pixel Bender are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries.ActiveX and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and other countries. Macintosh is a trademark of Apple Inc., registered in the United States and other countries. Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries. All other trademarks are the property of their respective owners. This product includes software developed by the Apache Software Foundation (http://www.apache.org/).MPEG Layer-3 audio compression technology licensed by Fraunhofer IIS and Thomson Multimedia (http://www.mp3licensing.com)Speech compression and decompression technology licensed from Nellymoser, Inc. (www.nellymoser.com).Video compression and decompression is powered by On2 TrueMotion video technology. 1992-2005 On2 Technologies, Inc. All Rights Reserved. http://www.on2.com.This product includes software developed by the OpenSymphony Group (http://www.opensymphony.com/).This product contains either BSAFE and/or TIPEM software by RSA Security, Inc.

    Sorenson Spark video compression and decompression technology licensed from Sorenson Media, Inc.Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USANotice to U.S. government end users. The software and documentation are Commercial Items, as that term is defined at 48 C.F.R. 2.101, consisting of Commercial Computer Software and Commercial Computer Software Documentation, as such terms are used in 48 C.F.R. 12.212 or 48 C.F.R. 227.7202, as applicable. Consistent with 48 C.F.R. 12.212 or 48 C.F.R. 227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Unpublished-rights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250 ,and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference.

  • iii

    1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    2. ActionScript 3.0 ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    ActionScript 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    ActionScript 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    3. ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    4. ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

    5. - ActionScript - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

    : GeometricShapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

    6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

  • iv ACTIONSCRIPT 3.0 FLASH

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

    7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

    length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

    : ASCII- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

    8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186

    : PlayList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

    9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

    ActionScript 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

    Flash Player AIR, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

    : CustomErrors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215

    10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236

    : Wiki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

    11. XML XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

    E4X XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246

    XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

    XMLList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

    XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

    XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252

  • v ACTIONSCRIPT 3.0 FLASH

    XML- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253

    XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

    XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259

    XML- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260

    : RSS- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

    12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264

    ActionScript 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269

    Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281

    13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331

    : SpriteArranger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334

    14. (API) (API) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340

    Graphics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346

    Math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350

    (API) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352

    (API) . . . . . . . . . . . 355

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359

    drawTriangles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362

    15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363

    Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365

    Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367

    Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372

  • vi ACTIONSCRIPT 3.0 FLASH

    16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384

    : Filter Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401

    17. Pixel Bender Pixel Bender . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419

    18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432

    MovieClip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434

    MovieClip ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437

    SWF- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440

    : RuntimeAssetsExplorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441

    19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452

    20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456

    IK Mover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457

    21. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459

    TextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461

    Flash Text Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483

    22. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510

    Bitmap BitmapData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518

  • vii ACTIONSCRIPT 3.0 FLASH

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521

    23. (3D) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533

    Flash Player AIR . . . . . . . . . . . . . . . . . . . . . . . . . . 534

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545

    24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555

    Video . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586

    FLV- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587

    : Video Jukebox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588

    25. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615

    : PodcastPlayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618

    26. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627

  • viii ACTIONSCRIPT 3.0 FLASH

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629

    : WordSearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634

    27. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641

    Flash Player AIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658

    : Telnet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675

    28. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681

    System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683

    Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684

    ApplicationDomain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685

    IME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692

    29. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698

    30. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704

    Flash Player AIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705

    , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708

    : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710

    : , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712

    31. API API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714

    API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716

    ExternalInterface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717

    : API - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721

    : API ActiveX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727

    32. Flash Player Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 738

    API- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 748

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749

  • ix ACTIONSCRIPT 3.0 FLASH

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 758

    SWF-, . . . . . . . . . . . . . . . . . . . 760

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761

    LocalConnection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761

    URL- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 762

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 764

    , , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 766

  • 1 1.

    Adobe ActionScript 3.0. , , , . - , . ActionScript 1.0 2.0 , .

    , ActionScript.

    , . , Adobe Flash CS4 Professional. -. , ActionScript 3.0, .

    ActionScript 3.0 , :

    Adobe Flex Builder 3;

    , Flex Builder 3;

    Adobe Flash CS4 Professional.

    ActionScript . ActionScript 3.0 4

    , ActionScript (, Flex Builder Flash). , , ActionScript 3.0. . ActionScript 2.

    2 5: ActionScript

    , ActionScript 3.0, , , , - ActionScript.

    6 11: ActionScript 3.0

    ActionScript 3.0.

    12 32: API- Flash Adobe AIR

    , Adobe Flash Player Adobe AIR, , , , , , .

  • 2 ACTIONSCRIPT 3.0 FLASH

    ActionScript ActionScript 3.0 - , . ActionScript 3.0 , , ActionScript 3.0 .

    ActionScript 3.0 ActionScript 3.0, , . , . ActionScript 3.0 , , , . ActionScript 3.0 Flash ( fl) API- Flash Player Adobe AIR ( flash).

    Flash Flash .

    Flash , - Flash.

    ActionScript 3.0 ActionScript 3.0 API- Flash Player Adobe AIR.

    ActionScript 3.0 Flash API- ActionScript 3.0 .

    ActionScript 3.0 , Flash.

    AIR Adobe Flash CS4 Professional

    , Adobe AIR ActionScript 3.0 API- Adobe AIR Flash.

    ActionScript 2.0 Adobe Flash ActionScript 2.0 , ActionScript 2.0 .

    ActionScript 2.0 Flash API- ActionScript 2.0 .

    ActionScript 2.0 , ActionScript 2.0 , Flash.

    ActionScript 2.0 Adobe Component Architecture 2 API-.

    Flash , API- JavaScript.

  • 3 ACTIONSCRIPT 3.0 FLASH

    ActionScript Adobe , Adobe Adobe.

    Adobe Adobe ActionScript, . : www.adobe.com/devnet/.

    Adobe , . , , , . , . : www.adobe.com/designcenter/.

    Flash Lite 2.x , Adobe Flash Lite 2.x , , , ActionScript, Flash Lite 2.x

    Flash Lite 2.x Flash Lite 2.x

    ActionScript Flash Lite 2.x , Flash Lite 2.x, ActionScript, Flash Lite 2.x.

    ActionScript Flash Lite 2.x , API- ActionScript 2.0 Flash Lite 2.x.

    Flash Lite 1.x Flash Lite 1.x Adobe Device Central CS4.

    Flash Lite 1.x , Flash Lite 1.x.

    ActionScript Flash Lite 1.x , ActionScript Flash Lite 1.x, ActionScript, Flash Lite 1.x.

    ActionScript Flash Lite 1.x ActionScript Flash Lite 1.x.

  • 4 2. ActionScript 3.0

    Adobe ActionScript 3.0, ActionScript.

    ActionScriptActionScript , Adobe Flash Player Adobe AIR. , Adobe Flash, Flex AIR, .

    ActionScript ActionScript (AVM), Flash Player AIR. ActionScript - ( , ) , , Adobe Flash CS4 Professional Adobe Flex Builder, Adobe Flex SDK. - SWF-, Flash Player AIR.

    ActionScript 3.0 , , - . ActionScript 3.0, ActionScript.

    ActionScript, AVM2, -

    , .

    (API) -

    XML ECMAScript XML (E4X) (ECMA-357 2). E4X ECMAScript, XML .

    DOM 3

    ActionScript 3.0ActionScript 3.0 ActionScript. , -, . ActionScript 3.0 , Adobe Flash Player, , AVM2, . ActionScript 3.0 , ActionScript.

  • 5 ACTIONSCRIPT 3.0 FLASH ActionScript 3.0

    ActionScript, AVM1, ActionScript 1.0 ActionScript 2.0. AVM1 Flash Player 9 10 . . 8.

    ActionScript 3.0 ActionScript 3.0 , ActionScript, ActionScript 3.0 ActionScript. ActionScript 3.0 Flash Player, .

    . Adobe AIR Flash Player.

    , , , , . ActionScript 3.0 , .

    ActionScript 3.0 , ActionScript. , , . -, , , .

    ActionScript 2.0 ; . ActionScript 3.0 . Flash Player Adobe AIR , . , .

    ActionScript 3.0 . , ; . , . , -. dynamic. ActionScript 3.0 , dynamic.

  • 6 ACTIONSCRIPT 3.0 FLASH ActionScript 3.0

    ActionScript 3.0 . . ActionScript 2.0 , , . mx.utils.Delegate, .

    ECMAScript XML (E4X) ActionScript 3.0 ECMAScript XML (E4X), ECMA-357. E4X , XML. XML E4X XML . E4X , XML, . E4X ActionScript . XML 242.

    ECMA E4X www.ecma-international.org.

    ActionScript 3.0 , . ActionScript 3.0 ECMAScript (ECMA-262) 3.

    , (public, private, protected). , . URI, XML E4X.

    ActionScript 2.0 , Number, . ActionScript 3.0 : int uint. int 32- , ActionScript . int . uint 32- , RGB, ..

    Flash Player (API) Flash Player ActionScript 3.0 , . : , . , , , .

    . Adobe AIR Flash Player.

  • 7 ACTIONSCRIPT 3.0 FLASH ActionScript 3.0

    DOM3 DOM3 , , . WWW DOM , , , ActionScript.

    flash.events. Adobe Flash , Flash Player, Adobe Flash.

    Flash Player Adobe AIR , .

    Sprite , MovieClip, . Shape . new, .

    Flash Player Adobe AIR, . z- .

    ActionScript 3.0 . . Loader SWF- , . URLLoader . Socket .

    , ActionScript . , , URLStream, URLLoader, . ByteArray , . SoundChannel SoundMixer. , SWF- , .

    ActionScript 3.0 flash.text, . TextLineMetrics ; TextFormat.getTextExtent(), ActionScript 2.0. TextField , . :

  • 8 ACTIONSCRIPT 3.0 FLASH ActionScript 3.0

    getCharBoundaries(), , ; getCharIndexAtPoint(), ; getFirstCharInParagraph(), . getLineLength(), , getLineText(), . Font SWF-.

    Flash Player . , Flash Player, Flash Player 9, . ActionScript 3.0 Flash Player 9 , Flash Player 9 . :

    SWF- ActionScript 1.0 2.0 ActionScript 3.0.

    ActionScript 3.0 SWF-, ActionScript 1.0 2.0, SWF-.

    SWF-, ActionScript 1.0 2.0, SWF-, ActionScript 3.0. , SWF-, Adobe Flash 8 Flex Builder 1.5, , SWF- ActionScript 3.0.

    , SWF- ActionScript 2.0 SWF- ActionScript 3.0, SWF- ActionScript 2.0 - . SWF- ActionScript 2.0 loadMovieNum(), 0 level.

    SWF-, ActionScript 1.0 2.0, , SWF- ActionScript 3.0. , , ActionScript 2.0. , ActionScript 2.0. ActionScript 3.0 . ActionScript 3.0.

    , ActionScript 3.0, ActionScript 2.0.

    Flash Player , SWF-, ActionScript.

    Flash Player 7 Flash Player 8 Flash Player 9 10

    SWF-,

    7 8 9 ( 10)

    AVM AVM1 AVM1 AVM1 AVM2

    SWF-, ActionScript

    1.0 2.0 1.0 2.0 1.0, 2.0 3.0

  • 9 ACTIONSCRIPT 3.0 FLASH ActionScript 3.0

    , Flash Player 9 . , Adobe Flash Player 8 , , , ActionScript 1.0 2.0.

    , ActionScript 1.0 2.0

    , ActionScript 3.0

    ,

    ActionScript 1.0 2.0 ActionScript 1.0 2.0, ActionScript 3.0

    ,

    ActionScript 1.0 2.0 (ActionScript 3.0 LocalConnection)

    ActionScript 1.0 2.0 LocalConnection.

    ActionScript 3.0

  • 10

    3. ActionScript

    , , ActionScript, , . , ActionScript. ActionScript.

    ActionScript , , .

    , . .

    , .

    .

    , , . . , ActionScript .

    , , . . , , . x y, , , . . . , : x 200; y 150 ( , x y). , , , , .

  • 11 ACTIONSCRIPT 3.0 FLASH ActionScript

    , - . , . . , , . , value1 ( 1) value2 ( 2), , :

    value1 + value2

    .

    ActionScript 3.0 :

    ,

    ,

    , . . ActionScript , . , , . ActionScript ( ) var:

    var value1:Number;

    value1, (Number () ActionScript). :

    var value2:Number = 17;

    Adobe Flash CS4 Professional . , . Flash , , ActionScript . , , rocketShip, ActionScript rocketShip .

    , , . , ActionScript. , . , , const var.

    const SALES_TAX_RATE:Number = 0.07;

  • 12 ACTIONSCRIPT 3.0 FLASH ActionScript

    , . . , , SALES_TAX_RATE, , 0.07. , , , , , , , ( ) , .

    ActionScript , . :

    : ,

    : ActionScript 3.0 :

    Number:

    int:

    uint: ( )

    : ,

    : , . , ActionScript , . , Date () . , : , , , , , . ., . , ( Date), , , , .

    , , , . , , :

    MovieClip:

    TextField:

    SimpleButton:

    Date: ( )

    . . . , , : A, B C. , , ; , , , MovieClip, MovieClip. .

    myVariable Number ().

    myVariable Number.

    myVariable Number.

  • 13 ACTIONSCRIPT 3.0 FLASH ActionScript

    myVariable Number.

    ActionScript , . , .

    , , . . , . .

    , Flash, , . , . () ActionScript MovieClip.

    , . , , , x, , , alpha () . Flash ; , . , Flash, ActionScript , , MovieClip.

    ActionScript , :

    , , , .

    , . , : artist ( ) title (). MovieClip , : rotation (), x, width () alpha(). , . , .

    ActionScript, . MovieClip square () X 100 .

    square.x = 100;

    rotation MovieClip square MovieClip triangle ():

  • 14 ACTIONSCRIPT 3.0 FLASH ActionScript

    square.rotation = triangle.rotation;

    MovieClip square , :

    square.scaleX = 1.5;

    : (square, triangle) , (.), (x, rotation, scaleX). , , . : , .

    , . , Flash , , .

    shortFilm :

    shortFilm.play();

    shortFilm ( , ):

    shortFilm.stop();

    shortFilm 1 ( ):

    shortFilm.gotoAndStop(1);

    , , , (), , . , . ( ) , . . , gotoAndStop() , , . , play() stop(), . , .

    ( ), . , , . , toString() :

    var numericData:Number = 9; var textData:String = numericData.toString();

    , toString() . TextField text ( ) String, . numericData , TextField calculatorDisplay:

    calculatorDisplay.text = numericData.toString();

  • 15 ACTIONSCRIPT 3.0 FLASH ActionScript

    , , . , , . , ActionScript , , - . , , .

    , , , ActionScript . , . . , ActionScript , , . , ActionScript Adobe Flash Player Adobe AIR , , , ActionScript, .

    , , . ActionScript .

    : ? , Loader ? , , Flash Player AIR ( , ).

    : ? , .

    : , ?

    ActionScript . (, , , ).

    function eventResponse(eventObject:EventType):void { // Actions performed in response to the event go here. } eventSource.addEventListener(EventType.EVENT_NAME, eventResponse);

    . -, , , . -, addEventListener() , , , , . .

    . . , , . , . ( eventResponse). ( eventObject). , . ( : EventType).

  • 16 ACTIONSCRIPT 3.0 FLASH ActionScript

    , , ActionScript. , , , . , click (, - ) MouseEvent ( ). listener () click MouseEvent. , ({ ... }) , .

    - (, , ) . addEventListener() ( , , addEventListener(). addEventListener() .

    -, , . , , , .

    -, . , , .

    , (event listener). listener, myButton.

    , , :

    function eventResponse(event:MouseEvent):void { // Actions performed in response to the event go here. } myButton.addEventListener(MouseEvent.CLICK, eventResponse);

    , Flash Player. ( Adobe AIR.)

    1 SWF- Flash Player eventResponse().

  • 17 ACTIONSCRIPT 3.0 FLASH ActionScript

    2 Flash Player ( , , ). : addEventListener() - ( myButton) eventResponse .

    a myButton , , addEventListener(), myButton eventResponse() .

    3 - , myButton, click ( MouseEvent.CLICK).

  • 18 ACTIONSCRIPT 3.0 FLASH ActionScript

    :

    a Flash Player , , ( MouseEvent). Event; MouseEvent; , . event object. : , , .

    b Flash Player , myButton. , . eventResponse() myButton, Flash Player eventResponse().

  • 19 ACTIONSCRIPT 3.0 FLASH ActionScript

    c eventResponse() , , .

    , :

    . playButton; this , : this.stop(); function playMovie(event:MouseEvent):void { this.play(); } playButton.addEventListener(MouseEvent.CLICK, playMovie);

    . entryText , outputText : function updateOutput(event:TextEvent):void { var pressedKey:String = event.text; outputText.text = "You typed: " + pressedKey; } entryText.addEventListener(TextEvent.TEXT_INPUT, updateOutput);

    URL: linkButton : function gotoAdobeSite(event:MouseEvent):void { var adobeURL:URLRequest = new URLRequest("http://www.adobe.com/"); navigateToURL(adobeURL); } linkButton.addEventListener(MouseEvent.CLICK, gotoAdobeSite);

  • 20 ACTIONSCRIPT 3.0 FLASH ActionScript

    , ActionScript , . , . ( ), . , , .

    ActionScript. Flash , , , Flash , . , Adobe Flex Builder MXML ( MXML, Design), ( MXML Flex), ActionScript, .

    , . ActionScript. -, ActionScript , , , ActionScript. :

    ( ): var someNumber:Number = 17.239; var someNegativeInteger:int = -53; var someUint:uint = 22;

    (, ): var firstName:String = "George"; var soliloquy:String = "To be or not to be, that is the question...";

    ( / true false): var niceWeather:Boolean = true; var playingOutside:Boolean = false;

    ( ): var seasons:Array = ["spring", "summer", "autumn", "winter"];

    XML ( XML): var employee:XML = Harold Webster ;

    ActionScript : Array, RegExp, Object Function. : 167, 221 Object 66.

    , new :

    var raceCar:MovieClip = new MovieClip(); var birthday:Date = new Date(2006, 7, 9);

  • 21 ACTIONSCRIPT 3.0 FLASH ActionScript

    new . , . , , , , .

    , , , , new. , :

    var someNumber:Number = 6.33; var someNumber:Number = new Number(6.33);

    new ClassName(). - ActionScript, ( , Flash Design MXML Flex Builder), ActionScript new.

    , Flash new , , . . MovieClip ActionScript 437.

    , , , ActionScript.

    ( ), . , . . :

    (+) , : var sum:Number = 23 + 32;

    (*) , : var energy:Number = mass * speedOfLight * speedOfLight;

    (==) () /: if (dayOfWeek == "Wednesday") { takeOutTrash(); }

    , if, , .

    . 76.

  • 22 ACTIONSCRIPT 3.0 FLASH ActionScript

    ActionScript , , , . , , . ActionScript .

    : . , , : // This is a comment; it's ignored by the computer. var age:Number = 10; // Set the age to 10 by default.

    : /*, */. , , , , . /* This might be a really long description, perhaps describing what a particular function is used for or explaining a section of code. In any case, these lines are all ignored by the computer. */

    . , , ActionScript.

    , , . . . ActionScript .

    : , , . , . . 87.

    : , , . . , , . . 84.

    : , , . if. if . true, , . : if (age < 20) { // show special teenager-targeted content }

  • 23 ACTIONSCRIPT 3.0 FLASH ActionScript

    else, if, , , true:

    if (username == "admin") { // do some administrator-only things, like showing extra options } else { // do some non-administrator things }

    . 82.

    : , ActionScript , . , (, , ) , -. , , , : , URL ( ).

    :

    1 FLA- ActionScript .

    2 .

    3 ActionScript.

    4 .

    FLA-, . , , FLA- .

    FLA- 1 , , ,

    FLA- , . FLA-, , .

    2 , ( , ). . , ( , 2 ).

  • 24 ACTIONSCRIPT 3.0 FLASH ActionScript

    3 : . .

    4 . ActionScript .

    , .

    FLA-1 ,

    (). , .

    2 , .

    3 > .

    4 , .

    5 playButton.

    6 15 . : homeButton.

    ActionScript , . :

    SWF- ( , 1).

    , SWF- .

    , URL- .

    11 1 .

    2 , > .

    3 : stop();

    1 .

    2 : function startMovie(event:MouseEvent):void { this.play(); }

  • 25 ACTIONSCRIPT 3.0 FLASH ActionScript

    startMovie(). startMovie() .

    3 , , , : playButton.addEventListener(MouseEvent.CLICK, startMovie);

    startMovie() click playButton. , , playButton startMovie().

    URL- 1 .

    2 : function gotoAuthorPage(event:MouseEvent):void { var targetURL:URLRequest = new URLRequest("http://example.com/"); navigateToURL(targetURL); }

    gotoAuthorPage(). URLRequest, URL http://example.com/, URL navigateToURL(), URL.

    3 , , , : homeButton.addEventListener(MouseEvent.CLICK, gotoAuthorPage);

    gotoAuthorPage() click homeButton. , , homeButton gotoAuthorPage().

    . , .

    1 > . Flash SWF-

    Flash Player.

    2 , .

    3 , :

    ?

    , addEventListener(), ?

    addEventListener()?

    ? ( MouseEvent.)

  • 26 ACTIONSCRIPT 3.0 FLASH ActionScript

    , , . ( ). ( SWF, ).

    ActionScript ActionScript , . ( ActionScript), , ActionScript, ActionScript ActionScript.

    ActionScript 3.0 , -. , ActionScript .

    Flash Flash ActionScript . , .

    ActionScript , Flash. MovieClip. , . . .

    ActionScript Flash, Flash. FLA- Flash. , Flash .

    Flash, ActionScript ( .as).

  • 27 ACTIONSCRIPT 3.0 FLASH ActionScript

    ActionScript ActionScript, ActionScript ( .as). ActionScript .

    ActionScript: , , , , MXML- . .

    ActionScript, , include ActionScript Adobe Flex MXML. ActionScript include ActionScript , . Flex MXML , ActionScript, . , ActionScript Box.as:

    ActionScript: ActionScript, .

    ActionScript , , ActionScript. :

    import , ActionScript , . , MovieClip ActionScript, , , . import flash.display.MovieClip;

    , MovieClip, import :

    import flash.display.*;

    , , , , .

    . Flash , , ( flash.*) . , , Flash ( fl.*), Flex , , .

    , ( , , ). ActionScript . , Box, Box. var smallBox:Box = new Box(10,20);

    Box, , Box.

  • 28 ACTIONSCRIPT 3.0 FLASH ActionScript

    , ActionScript ( ).

    Flash Adobe Flash CS4 Professional ActionScript, FLA-, ActionScript. Flash , , , , ActionScript. Flash . Flash , SWF .

    Adobe Flash CS4 Professional ActionScript:

    : , FLA-, ActionScript, .

    : ActionScript (.as).

    Flex BuilderAdobe Flex Builder Flex. MXML, Flex Builder ActionScript, Flex, ActionScript. Flex , , , . , , Flex SWF- , Flash-.

    Flex Builder - Flex , ActionScript MXML, , , , .

    ActionScript ActionScript (.as) , , . ActionScript Adobe ActionScript, . MXML ActionScript . Flex SDK, Flex Flex, SWF (Flex ActionScript). ActionScript ActionScript Flash .

  • 29 ACTIONSCRIPT 3.0 FLASH ActionScript

    ActionScript .

    ActionScript Flash.

    , ActionScript (, HTML- ), ActionScript.

    Flex ActionScript Flex SDK Flash Flex Builder.

    ActionScript:

    Adobe Dreamweaver CS4

    ASDT

    FDT

    FlashDevelop

    PrimalScript

    SE|PY

    ActionScript ActionScript, . ActionScript 3.0 .

    1 .

    .

    2 ActionScript 3.0.

    ActionScript Flash, Flex Builder, Dreamweaver .

    3 Flash Flex.

    Flash FLA-, , ActionScript. Flex MXML, ActionScript.

    4 ActionScript.

    Flash Flex, .

    , , , . , ( 1), , . . ( 3) ActionScript ( 2) ( 4). , , ActionScript . , , , .

  • 30 ACTIONSCRIPT 3.0 FLASH ActionScript

    . , , , .

    . . , , .

    1 , . :

    : . ( ). , , Song ( ) Playlist ( ) .

    : . , , , . .

    : , , . : , , . .

    2 . .

    3 , , . .

    4 , , . :

    , ? , .

    ? : ? ? ? . . ( , ).

    : , ? .

    , , ? .

  • 31 ACTIONSCRIPT 3.0 FLASH ActionScript

    5 , , , , , , ( , , ). , , ( Sprite MovieClip) . MovieClip ( Sprite) , . . 118.

    , , .

    ActionScript:

    1 ActionScript ( Flex Builder Flash) , (, Dreamweaver) , .

    2 class . public class, / , ( ). : public class MyClass { }

    public , . 103.

    3 package , . package, / ( class). , : package mypackage { public class MyClass { } }

    4 , var . , ( public). , / textVariable, numericVariable dateVariable: public var textVariable:String = "some default value"; public var numericVariable:Number = 17; public var dateVariable:Date;

    5 , . :

    myMethod() :

  • 32 ACTIONSCRIPT 3.0 FLASH ActionScript

    public function myMethod(param1:String, param2:Number):void { // do something with parameters }

    ( , ), , : public function MyClass() { // do stuff to set initial values for properties // and otherwise set up the object textVariable = "Hello there!"; dateVariable = new Date(2001, 5, 11); }

    , ( ).

    , . .

    . , . , ( , ). , . . get set 111.

    ActionScript . EventDispatcher, . . 264.

    : ActionScript .as Flash, Flex Builder, Dreamweaver .

    ActionScript 3.0 , Flash Flex Builder.

    ActionScript 3.0 Flash Flex Builder. ActionScript 3.0 Flash Flex. .

    ActionScript .

  • 33 ACTIONSCRIPT 3.0 FLASH ActionScript

    , , , , (UML). , , ActionScript.

    ActionScript .

    HelloWorld (, ).

    , Hello World!

    , , Greeter, Flash Flex.

    .

    .

    HelloWorld Greeter Hello World , . , Greeter, , Flash Flex Builder.

    Greeter Flash1 Flash > .

    2 ActionScript .

    ActionScript.

    3 > . , ActionScript Greeter.as .

    Greeter 33.

    Greeter Greeter Greeter, HelloWorld.

    Greeter1 :

  • 34 ACTIONSCRIPT 3.0 FLASH ActionScript

    package { public class Greeter { public function sayHello():String { var greeting:String; greeting = "Hello World!"; return greeting; } } }

    Greeter sayHello(), Hello World!.

    2 ActionScript > .

    Greeter .

    ActionScript Greeter, , , . , Flash Flex.

    HelloWorld Greeter. Greeter .

    ActionScript Flash1 > .

    2 Flash .

    Flash.

    3 > . , Greeter.as, Flash HelloWorld.fla .

    4 Flash 300 100 .

    5 mainText .

    6 .

    7 : var myGreeter:Greeter = new Greeter(); mainText.text = myGreeter.sayHello();

    8 .

    ActionScript 35.

  • 35 ACTIONSCRIPT 3.0 FLASH ActionScript

    ActionScript . , . . - , . Flash Flex Builder , .

    HelloWorld .

    ActionScript Flash1 .

    ActionScript HelloWorld Flash > .

    2 , HelloWorld.fla HelloWorld.as, .

    3 Hello World Flash Player.

    , ActionScript 3.0, , HelloWorld 35.

    HelloWorld , .

    , Greeter, . , .

    Greeter.as1 Greeter.as.

    2 ( ):

  • 36 ACTIONSCRIPT 3.0 FLASH ActionScript

    package { public class Greeter { /** * Defines the names that should receive a proper greeting. */ public static var validNames:Array = ["Sammy", "Frank", "Dean"]; /** * Builds a greeting string using the given name. */ public function sayHello(userName:String = ""):String { var greeting:String; if (userName == "") { greeting = "Hello. Please type your user name, and then press

    the Enter key."; } else if (validName(userName)) { greeting = "Hello, " + userName + "."; } else { greeting = "Sorry " + userName + ", you are not on the list."; } return greeting; } /** * Checks whether a name is in the validNames list. */ public static function validName(inputName:String = ""):Boolean { if (validNames.indexOf(inputName) > -1) { return true; } else { return false; } } } }

    Greeter :

    validNames . Greeter .

  • 37 ACTIONSCRIPT 3.0 FLASH ActionScript

    sayHello() . userName (""), greeting . , : "Hello, userName." , greeting : "Sorry userName, you are not on the list." (, [ ], ).

    validName() true, inputName validNames, false, . validNames.indexOf(inputName) validNames inputName. Array.indexOf() , -1, .

    Flash Flex, ActionScript.

    Flash1 HelloWorld.fla.

    2 1 , ("") sayHello() Greeter: var myGreeter:Greeter = new Greeter(); mainText.text = myGreeter.sayHello("");

    3 , mainText.

    4 User Name:, .

    5 InputText. Single line ( ). textIn .

    6 .

    7 : mainText.border = true; textIn.border = true; textIn.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); function keyPressed(event:KeyboardEvent):void { if (event.keyCode == Keyboard.ENTER) { mainText.text = myGreeter.sayHello(textIn.text); } }

    :

    .

    , textIn, , . addEventListener() , . .

  • 38 ACTIONSCRIPT 3.0 FLASH ActionScript

    keyPressed() , Enter. , sayHello() myGreeter textIn . , . text mainText.

    1 :

    var myGreeter:Greeter = new Greeter(); mainText.text = myGreeter.sayHello(""); mainText.border = true; textIn.border = true; textIn.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); function keyPressed(event:KeyboardEvent):void { if (event.keyCode == Keyboard.ENTER) { mainText.text = myGreeter.sayHello(textIn.text); } }

    8 .

    9 > .

    . , hello.

    ActionScript 3.0 Hello World , , .

    , . . . . . () Flex Builder Flash. - , .

    Flash, .

    Flash 1 Flash .

  • 39 ACTIONSCRIPT 3.0 FLASH ActionScript

    2 . . (, outputText). , , appendText() ( ).

    3 ( ) trace() .

    4 ; trace() , appendText().

    5 SWF- > .

    , : trace() .

    trace(): trace() ActionScript ( ) . trace(), . trace() , , trace(), . , : var albumName:String = "Three for the money";

    , trace(), :

    var albumName:String = "Three for the money"; trace("albumName =", albumName);

    :

    albumName = Three for the money

    trace() , . trace() , trace() .

    : trace() ( ) . appendText() TextField String . ActionScript . , outputText, albumName . var albumName:String = "Three for the money"; outputText.appendText("albumName = "); outputText.appendText(albumName);

    outputText:

    albumName = Three for the money

  • 40 ACTIONSCRIPT 3.0 FLASH ActionScript

    , appendText() , . , appendText(), . , ("\n"):

    outputText.appendText("\n"); // adds a line break to the text field

    trace(), appendText() . ( String ). . , toString():

    var albumYear:int = 1999; outputText.appendText("albumYear = "); outputText.appendText(albumYear.toString());

    , , , , , . , , Hello World, . ActionScript 3.0 , . , , , , .

  • 41

    4. ActionScript

    ActionScript 3.0 ActionScript, Adobe Flash Player. ActionScript, , . ActionScript 3.0 Flash Player.

    ActionScript . , , , .

    ActionScript 3.0 , . , , . ActionScript 3.0 , , .

    , - Java C++, , : , , , . ActionScript 3.0 , -. ActionScript 3.0 . , , . , .

    ActionScript 3.0 Java C++, ActionScript 3.0 , Java C++. , ActionScript , , , . ActionScript 3.0 , , getter-setter. , .

    ActionScript Java ++ , ActionScript- . ActionScript , . , Java C++, , .

  • 42 ACTIONSCRIPT 3.0 FLASH ActionScript

    ActionScript Java C++ , ActionScript . ActionScript , , . ActionScript 3.0 . , , .

    ActionScript . , , , , __proto__ __resolve, . , , Flash Player Adobe AIR, .

    ActionScript 3.0 . . , , , , . , , . , .

    ActionScript , . , Number, Boolean String, , ActionScript. , Array, Math XML, .

    , , , Object. , ActionScript, , Object , . ActionScript 2.0 , , Object.

    var someObj:Object; var someObj;

    ActionScript 3.0 , .

    var someObj:*; var someObj;

    Object. , undefined, Object .

    , class. : const, var, getter setter get set . function.

  • 43 ACTIONSCRIPT 3.0 FLASH ActionScript

    new. Date myBirthday.

    var myBirthday:Date = new Date();

    . , . , , , . , .

    ActionScript 3.0 , . , . , , .

    , , package.

    package samples { public class SampleCode { public var sampleGreeting:String; public function sampleFunction() { trace(sampleGreeting + " from sampleFunction()"); } } }

    SampleCode. , , : samples.SampleCode. , sampleGreeting sampleFunction() samples.SampleCode.sampleGreeting samples.SampleCode.sampleFunction().

    , , Java, . ActionScript 3.0 , , . , . , , public internal. Java, , ActionScript 3.0 , .

  • 44 ACTIONSCRIPT 3.0 FLASH ActionScript

    , , ActionScript 3.0 Java. , (.), Java. , . , , , , .

    . , - , . , , , SampleCode. , . , , .

    , . . flash.xml, ActionScript 3.0. flash.xml flash.

    flash.xml XML, ActionScript. , flash.xml, , XML XML, , XML ECMAScript (E4X), ActionScript 3.0.

    XML , XML flash.xml, , XML (flash.xml.XML). , XML XMLDocument, .

    package flash.xml { class XMLDocument {} class XMLNode {} class XMLSocket {} }

    ActionScript 3.0 flash. , flash.display , flash.events .

    ActionScript 3.0 , . ActionScript , . ActionScript 3.0 , , . , . , . , , .

  • 45 ACTIONSCRIPT 3.0 FLASH ActionScript

    ActionScript 3.0 . ActionScript , , package, . - ActionScript 3.0, . ActionScript 3.0 package, , , . . , , , , public internal. public, , , , .

    , . . , , , , - . .

    , , , . , ActionScript 2.0, .

    , SampleCode, . samples, import, SampleCode.

    import samples.*;

    import samples.SampleCode;

    import . SampleCode samples, SampleCode, , . .

    , , . , , . .

    , (samples.SampleCode), (SampleCode).

    , , , , . , SampleCode.

    var mySample:samples.SampleCode = new samples.SampleCode();

  • 46 ACTIONSCRIPT 3.0 FLASH ActionScript

    . , , , , . , SampleCode , .

    var mySample:SampleCode = new SampleCode();

    , . , , , , .

    , internal, , . , , public. , , SampleCode CodeFormatter.

    // SampleCode.as file package samples { public class SampleCode {} } // CodeFormatter.as file package samples { class CodeFormatter {} }

    SampleCode , public. CodeFormatter, , samples. CodeFormatter samples , .

    import samples.SampleCode; import samples.CodeFormatter; var mySample:SampleCode = new SampleCode(); // okay, public class var myFormatter:CodeFormatter = new CodeFormatter(); // error

    , , public. public .

    , . , , . , , SampleCode.

    package langref.samples { public class SampleCode {} }

    , , SampleCode.

    import samples.SampleCode; import langref.samples.SampleCode; var mySample:SampleCode = new SampleCode(); // name conflict

  • 47 ACTIONSCRIPT 3.0 FLASH ActionScript

    , SampleCode . , .

    var sample1:samples.SampleCode = new samples.SampleCode(); var sample2:langref.samples.SampleCode = new langref.samples.SampleCode();

    . C++ import #include. #include C++, , . ActionScript 3.0 include, . ActionScript 3.0 import , , .

    . public, private, protected internal . , .

    , XML, , ActionScript XML. , , , .

    , , , : . , . , sampleGreeting sampleFunction().

    class SampleCode { var sampleGreeting:String; function sampleFunction () { trace(sampleGreeting + " from sampleFunction()"); } }

    , , internal, , . , internal . public. sampleGreeting sampleFunction() internal.

    . , namespace. , version1.

    namespace version1;

    -, , . myFunction() version1.

  • 48 ACTIONSCRIPT 3.0 FLASH ActionScript

    version1 function myFunction() {}

    -, , use . myFunction() use.

    use namespace version1; myFunction();

    myFunction() , .

    version1::myFunction();

    , (URI), . URI .

    . URI, XML, URI. , URI.

    namespace flash_proxy = "http://www.adobe.com/flash/proxy";

    URI . URI , , URI. .

    namespace flash_proxy;

    , URI , . , , .

    , , . , flash_proxy, flash.utils. , flash_proxy flash.utils .

    package flash.utils { namespace flash_proxy; }

    public flash_proxy .

    package flash.utils { public namespace flash_proxy; }

  • 49 ACTIONSCRIPT 3.0 FLASH ActionScript

    . , , , ( ).

    , , public. public public, . , , public, , . , example1, myFunction(), example1, .

    namespace example1; class someClass { example1 myFunction() {} }

    myFunction() example1 , example1.

    .

    .

    . , , .

    , , . public, private, protected internal .

    , , - , public, private, protected internal. . , , private, . . , , .

    use namespace , (::). use namespace , . , example1, , use namespace example1.

    use namespace example1; myFunction();

  • 50 ACTIONSCRIPT 3.0 FLASH ActionScript

    . use namespace, , . .

    . , use namespace, . , , myFunction(), example1.

    example1::myFunction();

    , flash.utils.Proxy, ActionScript 3.0. Proxy, Object.__resolve, ActionScript 2.0, , . Proxy flash_proxy, .

    , flash_proxy, Proxy. Proxy , . Proxy , Proxy. , , Proxy, callProperty() Proxy.

    , : , . Proxy , flash_proxy , . ActionScript 3.0 flash_proxy Proxy. flash_proxy , Proxy.

    flash_proxy flash.utils , .

    package flash.utils { public namespace flash_proxy; }

    Proxy, Proxy.

    public class Proxy { flash_proxy function callProperty(name:*, ... rest):* flash_proxy function deleteProperty(name:*):Boolean ... }

    , Proxy, flash_proxy. , Proxy ( dynamic, ). callProperty() , flash_proxy.

  • 51 ACTIONSCRIPT 3.0 FLASH ActionScript

    package { import flash.utils.Proxy; import flash.utils.flash_proxy; dynamic class MyProxy extends Proxy { flash_proxy override function callProperty(name:*, ...rest):* { trace("method call intercepted: " + name); } } }

    MyProxy , testing(), . , Proxy , callProperty() ( trace()).

    var mySample:MyProxy = new MyProxy(); mySample.testing(); // method call intercepted: testing

    Proxy flash_proxy . -, , Proxy. ( Proxy , , . public .) -, flash_proxy , Proxy , - Proxy. , callProperty(). , callProperty() .

    dynamic class MyProxy extends Proxy { public function callProperty() {} flash_proxy override function callProperty(name:*, ...rest):* { trace("method call intercepted: " + name); } }

    , , (public, private, internal protected). , , . , , . .

    , . , , use namespace.

  • 52 ACTIONSCRIPT 3.0 FLASH ActionScript

    , , . . , myInternal.as, myInternal. example, example. public, .

    // myInternal.as in folder example package example { public namespace myInternal = "http://www.adobe.com/2006/actionscript/examples"; }

    , Utility.as Helper.as, , , . Utility example.alpha, , alpha, example. Helper example.beta, , beta, example. , example.alpha example.beta, , .

    // Utility.as in the example/alpha folder package example.alpha { import example.myInternal; public class Utility { private static var _taskCounter:int = 0; public static function someTask() { _taskCounter++; } myInternal static function get taskCounter():int { return _taskCounter; } } }

  • 53 ACTIONSCRIPT 3.0 FLASH ActionScript

    // Helper.as in the example/beta folder package example.beta { import example.myInternal; public class Helper { private static var _timeStamp:Date; public static function someTask() { _timeStamp = new Date(); } myInternal static function get lastCalled():Date { return _timeSta