flash as3 programming 2

741
 ADOBE ®  ACTIONSCRIPT ®  3.0'ı Programlama

Upload: nadir-bayraktar

Post on 05-Jul-2015

652 views

Category:

Documents


2 download

TRANSCRIPT

ADOBE ACTIONSCRIPT 3.0' Programlama

2008 Adobe Systems Incorporated. Tm haklar sakldr.Telif Hakk

Adobe Flash iin Adobe ActionScript 3.0 Programlama Bu klavuz son kullanc szlemesini ieren bir yazlmla birlikte verilmise bu klavuz ve onda anlatlan yazlm lisansldr ve yalnzca bu lisansa uygun ekilde kullanlabilir veya kopyalanabilir. Bu trde bir lisans tarafndan izin verildii durumlar dnda, bu klavuzun hibir blm Adobe Systems Incorporated irketinden nceden yazl izin alnmadan oaltlamaz, geri alma sistemlerinde depolanamaz veya elektronik, mekanik, kayt yoluyla veya dier herhangi bir ekilde veya herhangi bir yntemle aktarlamaz. Ltfen bu klavuzun ieriinin, klavuz son kullanc lisans szlemesine sahip bir yazlmla birlikte verilmemi olsa dahi, telif hakk yasalaryla korunduunu unutmayn. Bu klavuzun ierii yalnzca bilgi amaldr, nceden haber verilmeden deitirilebilir ve Adobe Systems Incorporated irketinin bir taahhd olarak yorumlanmamaldr. Adobe Systems Incorporated bu klavuzdaki bilgilerin hatal veya yanl olmas durumunda hibir sorumluluk veya ykmllk kabul etmez. Projenize dahil etmek isteyebileceiniz mevcut resimlerin ve grntlerin telif hakk yasalaryla korunuyor olabileceini unutmayn. Bu trde malzemenin yeni almanza yetkisiz olarak katlmas, telif hakk sahibinin haklarn ihlal etmek anlamna gelebilir. Ltfen telif hakk sahibinden gerekli tm izinleri aldnzdan emin olun. rnek ablonlarda irket adlarna yaplan tm referanslar yalnzca tantm amaldr ve hibir gerek kurulula ilgili deildir. 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, USA Notice 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

indekilerBlm 1: Bu klavuz hakknda Bu klavuzu kullanma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 ActionScript belgelerine eriim ActionScript renme kaynaklar ....................................................................................... 2 ....................................................................................... 3

Blm 2: ActionScript 3.0'a giri ActionScript hakknda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 ActionScript 3.0'n avantajlar ActionScript 3.0'daki yenilikler nceki srmlerle uyumluluk .......................................................................................... 4 ......................................................................................... 5 .......................................................................................... 7

Blm 3: ActionScript ile almaya balama Programlama temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Nesnelerle alma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Ortak program eleri

rnek: Animasyon portfy paras Kendi snflarnz oluturma Sonraki rnekleri altrma

ActionScript ile uygulamalar oluturma rnek: Temel bir uygulama oluturma

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Blm 4: ActionScript dili ve szdizimi Dile genel bak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Nesneler ve snflar Paketler ve ad alanlar Deikenler Veri trleri Szdizimi Operatrler Koullar Dng levler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Blm 5: ActionScript'te nesne tabanl programlama Nesne tabanl programlama temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Snflar Miras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Arabirimler

Gelimi balklar

rnek: GeometricShapes

Blm 6: Tarih ve saatlerle alma Tarih ve saat temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Takvim tarih ve saatlerini ynetme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA ivindekiler

Zaman aralklarn denetleme rnek: Basit analog saat

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

Blm 7: Dizelerle alma Dizelerin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Dizeler oluturma length zellii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

Dizelerdeki karakterlerle alma Dizeleri karlatrma Dizeleri bititirme

Dier nesnelerin dize halinde temsilini alma Dizelerdeki alt dizeleri ve desenleri bulma rnek: ASCII art

Dizeleri byk harfe veya kk harfe dntrme

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

Blm 8: Dizilerle alma Dizilerin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Dizinlenmi diziler ok boyutlu diziler Dizileri klonlama Gelimi balklar rnek: PlayList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 likilendirilebilir diziler

Blm 9: Hatalar ileme Hata ilemenin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Hata trleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 ActionScript 3.0'da hata ileme

Flash Player ve AIR uygulamalarnn hata ayklayc srmleriyle alma Bir uygulamada ezamanl hatalar ileme zel hata snflar oluturma Error snflarn karlatrma Hata olaylarn ve durumunu yantlama rnek: CustomErrors uygulamas

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

Blm 10: Normal ifadeler kullanma Normal ifadelerin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Normal ifade szdizimi rnek: Wiki ayrtrc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Dizelerle normal ifadeleri kullanma yntemleri

Blm 11: XML ile alma XML temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 XML ilemeye ynelik E4X yaklam XML nesneleri XMLList nesneleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

XML deikenlerini balatma

XML nesnelerini birletirme ve dntrme

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA vindekiler

XML yaplarnda gei yapma XML ad alanlarn kullanma XML tr dntrmesi Harici XML belgelerini okuma

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

rnek: Internet'ten RSS ykleme

Blm 12: Olaylar ileme Olay ileme temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 ActionScript 3.0 olay ileme, nceki srmlerden nasl farkllk gsterir Olay ak Olay nesneleri Olay dinleyicileri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259

rnek: Alarm Clock

Blm 13: Grnt programlama Grnt programlama temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 ekirdek grntleme snflar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 Grntleme listesi yaklamnn avantajlar Grntleme nesneleriyle alma Grntleme nesnelerini ileme Nesnelere animasyon uygulama rnek: SpriteArranger

Grntleme ieriini dinamik olarak ykleme

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308

Blm 14: izim API'sini kullanma izim API'sini kullanma temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 Graphics snfn anlama izgi ve eriler izme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326

Yerleik yntemleri kullanarak ekiller izme Degrade izgiler ve dolgular oluturma izim API'si ile animasyon uygulama izim API'sinin ileri dzey kullanm Yol izme Sarg kurallarn tanmlama izim yntemleriyle Math snfn kullanma rnek: Algoritmik Grsel Efekt Oluturucu

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333

Grafik verisi snflarn kullanma

drawTriangles() esini kullanma hakknda

Blm 15: Geometriyle alma Geometri temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 Point nesnelerini kullanma Matrix nesnelerini kullanma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 Rectangle nesnelerini kullanma

rnek: Grntleme nesnesine matris dntrmesi uygulama

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA viindekiler

Blm 16: Grntleme nesnelerine filtre uygulama Grntleme nesnelerine filtre uygulama temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 Filtreler oluturma ve uygulama Kullanlabilir grnt filtreleri rnek: Filter Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369

Blm 17: Pixel Bender glgelendiricileriyle alma Pixel Bender glgelendiricilerinin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 Glgelendirici ykleme veya gmme Glgelendirici meta verilerine erime Glgelendirici kullanma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382

Glgelendirici girdisi ve parametre deerlerini belirtme

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387

Blm 18: Film klipleriyle alma Film kliplerinin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 MovieClip nesneleriyle alma Film klibi oynatmn denetleme Harici bir SWF dosyasn ykleme rnek: RuntimeAssetsExplorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407

ActionScript ile MovieClip nesneleri oluturma

Blm 19: Ara hareketlerle alma Ara Hareket Temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411 Ara hareket komut dosyalarn kopyalama Ara hareket komut dosyalarn birletirme Animasyonu aklama Filtreler ekleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416

Ara hareketi grntleme nesneleriyle ilikilendirme

Blm 20: Ters kinematikle alma Ters Kinematik temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419 IK Armatrlerine Animasyon Uygulamaya Genel Bak IK armatr hakknda bilgi alma Bir IK Armatrn hareket ettirme IK Olaylarn Kullanma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423

IK Taycsn Balatma ve IK Taycsnn Hareketini Snrlama

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423

Blm 21: Metinle alma Metinle almann temelleri TextField snfn kullanma Flash Text Engine'i kullanma

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449

Blm 22: Bitmaplerle alma Bitmaplerle almann temelleri Bitmap ve BitmapData snflar Piksellerde deiiklik yapma Bitmap verilerini kopyalama

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483

Grlt ilevleri ile doku oluturma

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA viiindekiler

Bitmapleri kaydrma

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486

Mipmap oluturma avantajndan yararlanma rnek: Animasyonlu dnen ay

Blm 23: boyutlu (3B) alma 3B temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 Flash Player ve AIR alma zamannn 3B zelliklerini anlama 3B nesneler oluturma ve tama rnek: Perspektif projeksiyonu 3B nesneleri 2B grnmde yanstma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509

Karmak 3B dntrmeler gerekletirme 3B efektler iin genleri kullanma

Blm 24: Videoyla alma Video temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517 Video formatlarn anlama Video snfn anlama Video dosyalarn ykleme Video oynatmn denetleme Video dosyalarn aka alma aret noktalarn anlama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521

Tam ekran modunda video oynatma

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534

Meta veri ve iaret noktalar iin geri ar yntemleri yazma aret noktalarn ve meta verileri kullanma Kamera girdisini yakalama Sunucuya video gnderme rnek: Video Jukebox

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550

FLV dosyalar iin gelimi balklar

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551

Blm 25: Sesle alma Sesle almann temelleri Ses mimarisini anlama Gml seslerle alma

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562

Harici ses dosyalarn ykleme Ak ses dosyalaryla alma Sesleri alma

Dinamik olarak oluturulmu sesle alma

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570

Sesler yklenirken ve alnrken dikkate alnmas gereken gvenlikle ilgili noktalar Ses dzeyini denetleme ve yatay kaydrma Ses meta verisiyle alma Ham ses verilerine erime Ses girdisini yakalama rnek: Podcast Player

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580

Blm 26: Kullanc girdisini yakalama Kullanc girdisinin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 Klavye girdisini yakalama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA viiiindekiler

Fare girii yakalama rnek: WordSearch

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595

Blm 27: A iletiimi ve iletiim A iletiimi ve iletiimin temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599 Harici verilerle alma Soket balantlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607 Dier Flash Player ve AIR rneklerine balanma Yerel verileri saklama

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635

Veri dosyalaryla alma

rnek: Bir Telnet istemcisi oluturma rnek: Dosya ykleme ve indirme Blm 28: stemci sistemi ortam stemci sistemi ortamnn temelleri System snfn kullanma Capabilities snfn kullanma IME snfn kullanma

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

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652

ApplicationDomain snfn kullanma rnek: Sistem yeteneklerini alglama

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647

Blm 29: Kopyalayp yaptrma Kopyalayp yaptrma temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656 Sistem panosundan okuma ve sistem panosuna yazma Pano veri formatlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657

Blm 30: Yazdrma Yazdrma temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 Sayfa yazdrma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669 Flash Player ve AIR grevleri ve sistem yazdrmas Boyutu, lei ve ynlendirmeyi ayarlama rnek: oklu sayfa yazdrma rnek: lekleme, krpma ve yantlama

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667

Blm 31: Harici API'yi kullanma Harici API'yi kullanma temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672 Harici API gereksinimleri ve avantajlar ExternalInterface snfn kullanma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684

rnek: Harici API'yi bir web sayfas konteyneriyle kullanma rnek: Harici API'yi bir ActiveX konteyneriyle kullanma Blm 32: Flash Player gvenlii Flash Player gvenliine genel bak Gvenlik sanal alanlar zin denetimleri

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694

A iletiim API'lerini kstlama Tam ekran modu gvenlii erik ykleme

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

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA ixindekiler

apraz komut dosyas oluturma Veri ykleme

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714

Veri olarak yklenen ortama erime

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718

Gvenlik etki alanna ie aktarlan SWF dosyalarndan gml ierik ykleme Eski ierikle alma LocalConnection izinlerini ayarlama Giden URL eriimini denetleme Paylalan nesneler

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717

Kamera, mikrofon, pano, fare ve klavye eriimi Dizin

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719

1

Blm 1: Bu klavuz hakkndaBu klavuz Adobe ActionScript 3.0'da uygulama gelitirmek iin gerekli olan temel bilgileri sunar. Aklanan fikir ve teknikleri en iyi ekilde anlayabilmek iin veri trleri, deikenler, dngler ve ilevler gibi genel programlama kavramlarn bilmeniz gerekmektedir. Ayrca snflar ve miras alma gibi nesne tabanl temel programlama kavramlarn da anlyor olmanz gerekir. ActionScript 1.0 veya ActionScript 2.0 bilgisi iinize yarayacak olsa da art deildir.

Bu klavuzu kullanmaBu klavuzun blmleri ActionScript belgelerinin ilgili ksmlarn daha kolay bulmanz iin aadaki mantksal gruplara ayrlmtr:Blmler Blm 2-5, ActionScript programlamaya genel bak Aklama Dil szdizimi, deyimler, operatrler ve nesne tabanl ActionScript programlama gibi temel ActionScript 3.0 kavramlarn ele alr. ActionScript 3.0'daki st dzey veri trlerini aklar.

Blm 6-11, temel ActionScript 3.0 veri trleri ve snflar Blm 12-32, Flash Player ve Adobe AIR API'leri

Olay ileme, grntleme nesneleri ve grntleme listesiyle alma, a ve iletiimler, dosya girdisi ve kts, harici arabirim, uygulama gvenlik modeli ve bunlar gibi Adobe Flash Player ve Adobe AIR uygulamasna zg paket ve snflarda uygulanan nemli zellikleri aklar.

Bu klavuz ayrca nemli veya sk kullanlan snflar iin uygulama programlama kavramlarn gsteren saysz rnek dosya ierir. rnek dosyalar Adobe Flash CS4 Professional ile daha kolay yklenecek ve kullanlabilecek ekilde paketlenmitir ve saran dosyalar ierebilir. Ancak, rnek kodun temeli istediiniz gelitirme ortamnda kullanabileceiniz ActionScript 3.0 biimindedir. ActionScript 3.0 unlar da dahil olmak zere birden fazla ekilde yazlabilir ve derlenebilir:

Adobe Flex Builder 3 gelitirme ortamn kullanma Flex Builder 3 ile birlikte verilen gibi herhangi bir metin dzenleyici ve komut satr derleyici kullanma Adobe Flash CS4 Professional gelitirme aracn kullanmaActionScript gelitirme ortamlar ile ilgili daha fazla bilgi iin ActionScript 3.0'a giri sayfa 4 blmne bakn. Bu klavuzdaki kod rneklerini anlamak iin Flex Builder veya Flash gelitirme arac gibi ActionScript iin dahili gelitirme ortamlar tecrbeniz olmas gerekli deildir. Ancak bu aralarla ActionScript 3.0 kodu yazmay ve derlemeyi renmek iin ilgili aralarn belgelerine bavurmak isteyeceksiniz. Daha fazla bilgi iin bkz. ActionScript belgelerine eriim sayfa 2.

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 2Bu klavuz hakknda

ActionScript belgelerine eriimBu klavuz arlkl olarak zengin ve gl bir nesne tabanl programlama dili olan ActionScript 3.0' anlatt iin belirli bir ara veya sunucu mimarisi ierisindeki uygulama gelitirme srecine veya i akna geni yer vermez. Bu nedenle, ActionScript 3.0' Programlama'nn yan sra, ActionScript 3.0 uygulamalarnn tasarlama, gelitirme, test etme ve konulandrma srecinde dier belgelere de bavurmak isteyeceksiniz.

ActionScript 3.0 belgeleriBu klavuz size ActionScript 3.0 programlama dilinin altndaki kavramlar tantr ve dilin nemli zelliklerini gsteren uygulama detaylar ve rnekleri sunar. Ancak, bu klavuz tam bir dil bavurusu deildir. Bu nedenle, dil iindeki her snf, yntemi, zellii ve olay anlatan ActionScript 3.0 Dil ve Bileen Bavurusu blmn inceleyin. ActionScript 3.0 Dil ve Bileenler Bavurusu, temel dil, Flash gelitirme arac bileenleri (fl paketlerindeki) ve Flash Player ve Adobe AIR API'leri (flash paketlerindeki) ile ilgili ayrntl bavuru bilgisi sunar.

Flash belgeleriFlash gelitirme aracn kullanyorsanz, u klavuzlara bavurmak isteyebilirsiniz:Kitap Flash' kullanma Aklama Flash gelitirme aracnda dinamik web uygulamalarnz nasl gelitireceinizi aklar ActionScript 3.0 dili ve temel Flash Player ve Adobe AIR API'sinin belirli kullanmn aklar Flash gelitirme arac bileenleri ve ActionScript 3.0 API'si iin szdizimi, kullanm ve kod rnekleri sunar Flash tarafndan oluturulan uygulamalar gelitirmek iin bileenlerin kullanmyla ilgili ayrntlar aklar Flash iinde ActionScript 3.0 ve Adobe AIR API'si kullanlarak Adobe AIR uygulamalarnn nasl gelitirileceini ve konulandrlacan anlatr ActionScript 2.0 szdizimine genel bir bak sunar ve farkl nesne trleri ile alrken ActionScript 2.0'n nasl kullanlacan aklar Flash gelitirme arac bileenleri ve ActionScript 2.0 API'si iin szdizimi, kullanm ve kod rnekleri sunar Flash tarafndan oluturulan uygulamalar gelitirmek iin ActionScript 2.0 bileenlerinin nasl kullanlacan ayrntl ekilde aklar Srm 2 Adobe Bileen Mimarisi ve ilgili API ierisinde bulunan bileenleri anlatr Javascript API'si ierisindeki nesneleri, yntemleri ve zellikleri anlatr Uygulama gelitirmek iin Adobe Flash Lite 2.x uygulamasnn nasl kullanlacan aklar ve Flash Lite 2.x ile kullanlabilen ActionScript zellikleri iin szdizimi, kullanm ve kod rnekleri sunar Flash Lite 2.x uygulamalarnn nasl gelitirileceini aklar Flash Lite 2.x ile nasl uygulama gelitirileceini gsterir ve Flash Lite 2.x gelitiricilerinin kullanabildii tm ActionScript zelliklerini anlatr Flash Lite 2.x iinde bulunan ActionScript 2.0 API'si iin szdizimi, kullanm ve kod rnei sunar.

ActionScript 3.0' Programlama

ActionScript 3.0 Dil ve Bileenler Bavurusu

ActionScript 3.0 Bileenlerini Kullanma

Flash CS4 Professional ile Adobe AIR Uygulamalar Gelitirme Adobe Flash iinde ActionScript 2.0 renme

ActionScript 2.0 Dil Bavurusu

ActionScript 2.0 Bileenlerini Kullanma

ActionScript 2.0 Bileenleri Dil Bavurusu Flash' Geniletme Flash Lite 2.x ile almaya Balama

Flash Lite 2.x Uygulamalar Gelitirme Flash Lite 2.x ActionScript'e Giri

Flash Lite 2.x ActionScript Dil Bavurusu)

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 3Bu klavuz hakknda

Kitap Flash Lite 1.x ile almaya Balama

Aklama Flash Lite 1.x uygulamasna giri sunar ve Adobe Device Central CS4 emlatr kullanarak ieriinizi nasl test edeceinizi aklar Flash Lite 1.x kullanlarak mobil cihazlar iin nasl uygulama gelitirileceini anlatr. Flash Lite 1.x ierisinde nasl ActionScript kullanlacan ve Flash Lite 1.x ierisinde bulunan ActionScript zelliklerini anlatr Flash Lite 1.x ierisinde bulunan ActionScript elerinin szdizimini ve kullanmn sunar

Flash Lite 1.x Uygulamalar Gelitirme

Flash Lite 1.x ActionScript renmek

Flash Lite 1.x ActionScript Dil Bavurusu

ActionScript renme kaynaklarBu klavuzlara ek olarak Adobe, Adobe Gelitirici Merkezi ve Adobe Tasarm Merkezi'nde dzenli olarak gncellenen makaleler, tasarm fikirleri ve rnekler sunar.

Adobe Gelitirici MerkeziAdobe Gelitirici Merkezi'nde ActionScript ile ilgili en son bilgiler, gerek dnya uygulama gelitirme zerine makaleler ve nemli yeni konular ile ilgili bilgiler yer almaktadr. Gelitirici Merkezi'ne www.adobe.com/devnet/ adreslerinden ulaabilirsiniz.

Adobe Tasarm MerkeziDijital tasarm ve hareketli grafik ile ilgili en son bilgileri aln. nemli sanatlarn adyla gz atn, yeni tasarm eilimlerini kefedin ve dersler, nemli i aklar ve gelimi tekniklerle becerilerinizi gelitirin. Yeni dersler ve makaleler ile ilham verici galeri eleri iin iki haftada bir kontrol edin. Tasarm Merkezi'ne www.adobe.com/designcenter/ adresinden ulaabilirsiniz.

4

Blm 2: ActionScript 3.0'a giriBu blmde, en yeni ve en yeniliki ActionScript srm olan Adobe ActionScript 3.0'a genel bak salanmaktadr.

ActionScript hakkndaActionScript, Adobe Flash Player ve Adobe AIR alma zaman ortamlar iin programlama dilidir. Flash, Flex ve AIR ierik ve uygulamalarnda etkileim, veri ileme ve daha fazlasna olanak salar. ActionScript, Flash Player ve AIR uygulamasnn bir paras olan ActionScript Virtual Machine (AVM) tarafndan altrlr. ActionScript kodu, Adobe Flash CS4 Professional veya Adobe Flex Builder uygulamasnda yerleik olanlar ya da Adobe Flex SDK uygulamasnda kullanlabilir olanlar gibi, genellikle bir derleyici tarafndan bayt kodu formatnda (bilgisayarlar tarafndan yazlan ve anlalan bir eit programlama dili) derlenir. Bayt kodu, Flash Player ve AIR uygulamalar tarafndan altrlan SWF dosyalarnda gmldr. ActionScript 3.0, nesne tabanl programlama konusunda temel bilgisi olan gelitiricilere bilindik gelecek gl bir programlama modeli sunar. ActionScript 3.0'n nceki ActionScript srmlerinden daha gelimi olan baz nemli zellikleri arasnda unlar yer alr:

AVM2 ad verilen ve yeni bir bayt kodu talimat kmesi kullanp nemli lde performans art salayan yeni birActionScript Virtual Machine.

nceki derleyici srmlerinden daha derin eniyiletirmeler gerekletiren daha modern bir derleyici kodu Dk dzeyde nesne denetimi ve gerek bir nesne odakl model ieren, geniletilmi ve gelitirilmi bir uygulamaprogramlama arabirimi (API)

XML iin ECMAScript (E4X) belirtimini (ECMA-357 srm 2) esas alan XML API'si. E4X, dilin yerel veri trolarak ECMAScript'e XML ekleyen bir dil uzantsdr.

Belge Nesnesi Modeli (DOM) Dzey 3 Olaylar Belirtimi'ni esas alan bir olay modeli

ActionScript 3.0'n avantajlarActionScript 3.0, nceki ActionScript srmlerinin komut dosyas oluturma yeteneklerinden ok daha fazlasn sunar. Byk veri kmeleri ve nesne tabanl, yeniden kullanlabilir kod tabanlar ile olduka karmak uygulamalarn oluturulmasn kolaylatrmak zere tasarlanmtr. ActionScript 3.0, Adobe Flash Player uygulamasnda alan ierik iin gerekmese de, yalnzca yeni sanal makine olan AVM2 ile kullanlabilen performans artna bir kap aar. ActionScript 3.0 kodu, eski ActionScript kodundan on kata kadar daha hzl alabilir. Eski ActionScript Virtual Machine srm olan AVM1, ActionScript 1.0 ve ActionScript 2.0 kodunu altrr. Varolan ve eski ierikle geriye doru uyumluluk salamak iin Flash Player 9 ve 10 tarafndan AVM1 desteklenir. Daha fazla bilgi iin, bkz. nceki srmlerle uyumluluk sayfa 7.

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 5ActionScript 3.0'a giri

ActionScript 3.0'daki yeniliklerActionScript 3.0, ActionScript programclara tandk gelen birok snf ve zellik ierse de, ActionScript 3.0 mimari ve kavramsal adan nceki ActionScript srmlerinden farkldr. ActionScript 3.0'daki gelitirmeler arasnda, ekirdek dilin yeni zellikleri ve dk dzeyli nesneler zerinde daha yksek denetim salayan gelimi Flash Player API'si yer alr. Not: Adobe AIR uygulamalar, Flash Player API'lerini de kullanabilir.

ekirdek dil zellikleriekirdek dil, programlama dilinin deyimler, ifadeler, koullar, dngler ve trler gibi temel bina bloklarn tanmlar. ActionScript 3.0, gelitirme ilemini hzlandran birok yeni zellik ierir. alma zaman istisnalar ActionScript 3.0, nceki ActionScript srmlerinden daha ok hata koulu bildirir. Yaygn hata koullar iin alma zaman istisnalar kullanlarak hata ayklama deneyimini gelitirir ve hatalar daha gl ekilde ileyen uygulamalar gelitirmenizi salar. alma zaman hatalar, kaynak dosya ve satr numaras bilgilerini ek aklama olarak veren yn izleri salayarak hzl ekilde hatalarn yerini belirlemenize yardmc olur. alma zaman trleri ActionScript 2.0'da tr ek aklamalar birincil olarak gelitiriciye yardm salama amalyd; alma zamannda tm deerler dinamik olarak trlenmitir. ActionScript 3.0'da, tr aklamalar alma zamannda korunur ve birok ama iin kullanlr. Flash Player ve Adobe AIR, alma zaman, alma zaman tr denetlemesi uygulayarak sistemin tr gvenliini artrr. Tr bilgileri ayn zamanda yerel makine temsillerinde deikenleri temsil etmek iin de kullanlarak performans artrr ve bellek kullanmn azaltr. Mhrlenmi snflar ActionScript 3.0, mhrlenmi snf kavramn getirmitir. Mhrlenmi bir snf, derleme zamannda tanmlanm yalnzca sabit zellikler ve yntemler kmesine sahiptir; bu snfa ek zellikler ve yntemler eklenemez. Bu da daha kat derleme zaman denetlemesi salayarak daha gl programlar olumasna neden olur. Buna ek olarak, nesne rneklerinin her biri iin dahili bir karma tablo gerektirmeyerek bellek kullanmn da azaltr. dynamic anahtar szcnn kullanlmasyla dinamik snflar da mmkndr. ActionScript 3.0'daki tm snflar varsaylan olarak mhrlenmitir ancak dynamic anahtar szcyle bu snflarn dinamik olduu bildirilebilir. Yntem kapan ActionScript 3.0, yntem kapannn otomatik olarak orijinal nesne rneini hatrlamasna olanak salar. Bu zellik, olay ilemesi iin kullanldr. ActionScript 2.0'da, yntem kapanlar hangi nesne rneinden ayklandklarn hatrlamaz ve bu da yntem kapan arldnda beklenmeyen davran olumasna neden olur. mx.utils.Delegate snf sk kullanlan bir geici zmdr ancak artk buna ihtiya kalmamtr. XML iin ECMAScript (E4X) ActionScript 3.0, en son ECMA-357 olarak standartlatrlm olan XML iin ECMAScript (E4X) uygular. E4X, XML'in ilenmesi iin doal ve akc bir dil yaplar kmesi sunar. Geleneksel XML ayrtrma API'lerinin tersine, E4X ile XML, dilin yerel bir veri trym gibi hareket eder. E4X, ihtiya duyulan kod miktarn byk lde azaltarak XML'i ileyen uygulamalarn gelitirilmesini kolaylatrr. E4X'in ActionScript 3.0 uygulamas hakknda daha fazla bilgi almak iin, bkz. XML ile alma sayfa 222. ECMAnn E4X belirtimini grntlemek iin www.ecma-international.org adresine gidin.

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 6ActionScript 3.0'a giri

Normal ifadeler ActionScript 3.0, hzl ekilde dizeleri arayabilmeniz ve ileyebilmeniz amacyla normal ifadeler iin yerel destek ierir. ECMAScript (ECMA-262) srm 3 dil belirtiminde belirtildii ekilde ActionScript 3.0, normal ifadeler iin destek uygular. Ad alanlar Ad alanlar, bildirimlerin grnrln (public, private, protected) kontrol etmek iin kullanlan geleneksel eriim belirticilerine benzer. Bunlar, setiiniz adlara sahip olabilen zel eriim belirticileri olarak alr. akmalar nlemek iin, ad alanlarnda bir Universal Resource Identifier (URI) bulunur ve E4X ile altnzda XML ad alanlarn temsil etmek iin de ad alanlar kullanlr. Yeni ilkel trler ActionScript 2.0, Number adnda, ift kesinlikli ve kayan nokta says olan tek bir saysal tre sahiptir. ActionScript 3.0, int ve uint trlerini ierir. int tr, ActionScript'in CPU iin hzl tam say matematik yeteneklerinden faydalanmasna olanak salayan 32-bit iaretli bir tam saydr. int tr, dng sayalar ve tam saylarn kullanld deikenler iin kullanldr. uint tr, RGB renk deerleri, bayt saylar ve daha fazlas iin kullanl olan iaretsiz, 32-bit tam say trdr.

Flash Player API'sinin zellikleriActionScript 3.0'daki Flash Player API'leri, dk bir dzeydeki nesneleri kontrol etmenize olanak salayan birok snf ierir. Dil mimarisi, nceki srmlere gre daha sezgisel olacak ekilde tasarlanmtr. Burada ayrntl ekilde ele alnacak ok fazla sayda yeni snf olsa da, ilerleyen blmlerde baz nemli deiikliklere yer verilmitir. Not: Adobe AIR uygulamalar, Flash Player API'lerini de kullanabilir. DOM3 olay modeli Belge Nesnesi Modeli Dzey 3 olay modeli (DOM3), uygulama iindeki nesnelerin etkileim ve iletiim kurarak durumlarn koruyabilmesi ve deiiklie yant vermesi iin olay mesajlar oluturma ve ilemeye ynelik standart bir yntem salar. World Wide Web Consortium DOM Dzey 3 Olaylar Belirtimi'nden sonra dzenlenen bu model, nceki ActionScript srmlerinde kullanlabilir olan olay sistemlerinden daha net ve daha etkili bir mekanizma salar. Olaylar ve hata olaylar, flash.events paketinde bulunur. Flash bileenleri erevesi, Flash Player API'siyle ayn olay modelini kullanr, bu nedenle olay sistemi tm Flash platformunda birletirilmitir. Grntleme listesi API'si Flash Player ve Adobe AIR grntleme listesine (uygulamadaki grsel eleri ieren aa) erime API'si, grsel ilkel elerle almaya ynelik snflar ierir. Yeni Sprite snf, hafif bir bina blou olup MovieClip snfna benzer ancak UI bileenleri iin temel snf olarak daha uygundur. Yeni Shape snf ham vektr ekillerini temsil eder. Bu snflar new operatryle doal olarak balatlabilir ve herhangi bir zamanda dinamik olarak yeniden st eye sahip olabilir. Derinlik ynetimi imdi otomatiktir ve Flash Player ve Adobe AIR uygulamalarnda yerleik olarak bulunur, bylece derinlik saylarnn atamasnn oluturulmas gereksizdir. Nesnelerin z srasnn belirtilmesi ve ynetilmesi iin yeni yntemler salanr.

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 7ActionScript 3.0'a giri

Dinamik verileri ve ierikleri ileme ActionScript 3.0, uygulamanzda varlklarn ve verilerin yklenmesi iin tm API'de sezgisel ve tutarl olan mekanizmalar ierir. Yeni Loader snf, SWF dosyalarnn ve grnt varlklarnn yklenmesi iin tek bir mekanizma ve yklenen ierikle ilgili ayrntl bilgilere erime yolu salar. URLLoader snf, veri tabanl uygulamalarda metin ve ikili verilerin yklenmesi iin ayr bir mekanizma salar. Socket snf, sunucu soketlerine herhangi bir formatta ikili verileri okuyup yazmak iin bir ara salar. Dk dzeyli veri eriimi eitli API'ler, nceden ActionScript'te asla kullanlabilir olmayan verilere dk dzeyli eriim salar. URLLoader tarafndan uygulanan URLStream snf, indirilen veriler iin, indirme srasnda verilere ham ikili veriler olarak eriilmesini salar. ByteArray snf, ikili verilerle okumay, yazmay ve almay eniyiletirmenize olanak salar. Yeni Sound API'si, SoundChannel ve SoundMixer snflar zerinden ayrntl ses denetimi salar. Gvenlikle ilgilenen yeni API'ler, SWF dosyasnn veya yklenen ieriin gvenlik ayrcalklar hakknda bilgi salayarak gvenlik hatalarn daha iyi ilemenize olanak tanr. Metinle alma ActionScript 3.0, tm metinle ilgili API'ler iin bir flash.text paketi ierir. TextLineMetrics snf, bir metin alanndaki metin satr iin ayrntl ltler salar; ActionScript 2.0'daki TextFormat.getTextExtent() esinin yerini alr. TextField snf, bir metin satr veya bir metin satrndaki tek bir karakter hakknda belirli bilgiler salayabilen ilgin zellikte birok yeni dk dzeyli yntemler ierir. Bu yntemler arasnda, bir karakterin snrlama kutusunu temsil eden dikdrtgeni dndren getCharBoundaries(), belirtilen bir noktadaki karakterin dizinini dndren getCharIndexAtPoint() ve bir paragraftaki birinci karakterin dizinini dndren getFirstCharInParagraph() yer alr. Satr dzeyindeki yntemler arasnda, belirtilen bir metin satrndaki karakterlerin saysn dndren getLineLength() ve belirtilen satrn metnini dndren getLineText() yer alr. Yeni bir Font snf, SWF dosyalarndaki gml fontlarn ynetilmesi iin aralar salar.

nceki srmlerle uyumlulukFlash Player her zamanki gibi, nceden yaynlanm ierikle geriye doru tam uyumluluk salar. nceki Flash Player srmlerinde alan tm ierikler Flash Player 9 ve sonrasnda da alr. Ancak Flash Player 9'da ActionScript 3.0'n bulunmas, eski ierik ile Flash Player 9'da alan yeni ierik arasnda birlikte allabilirlik konusunda zorluklara yol aabilir. Uyumluluk sorunlar arasnda unlar yer alr:

Tek bir SWF dosyas, ActionScript 1.0 veya 2.0 kodunu ActionScript 3.0 koduyla birletiremez. ActionScript 3.0 kodu, ActionScript 1.0 veya 2.0'da yazlm bir SWF dosyasn ykleyebilir ancak SWF dosyasnndeikenlerine ve ilevlerine eriemez.

ActionScript 1.0 veya 2.0'da yazlm SWF dosyalar, ActionScript 3.0'da yazlm SWF dosyalarn ykleyemez. Buda, Flash 8 veya Flex Builder 1.5 ya da nceki srmlerde yazlm SWF dosyalarnn ActionScript 3.0 SWF dosyalarn ykleyemedii anlamna gelir. Bu kuraln tek istisnas, ActionScript 2.0 SWF dosyas, dzeylerinden birine nceden herhangi bir ey yklemedii srece, ActionScript 2.0 SWF dosyasnn bir ActionScript 3.0 SWF dosyasyla kendisini deitirebilmesidir. ActionScript 2.0 SWF dosyas, loadMovieNum() esine bir ar yapp level parametresine 0 deerini ileterek bunu yapabilir.

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 8ActionScript 3.0'a giri

Genelde, ActionScript 3.0'da yazlm SWF dosyalaryla birlikte alacaksa, ActionScript 1.0 veya 2.0'da yazlmSWF dosyalarnn alnmas gerekir. rnein, ActionScript 2.0' kullanarak bir ortam oynatcs oluturduunuzu varsayn. Ortam oynatcs, ayrca ActionScript 2.0'da oluturulmu eitli ierikleri de ykler. ActionScript 3.0'da yeni ierik oluturup bu ierii ortam oynatcsna ykleyemezsiniz. Video oynatcsn ActionScript 3.0'a almanz gerekir. Ancak ActionScript 3.0'da bir ortam oynatcs oluturursanz, bu ortam oynatcs ActionScript 2.0 ieriinizin basit yklemelerini gerekletirebilir. Aadaki tablolarda, nceki Flash Player srmlerinin yeni ierik yklenmesi ve kod altrlmasyla ilgili snrlamalar ve farkl ActionScript srmlerinde yazlm SWF dosyalar arasnda apraz komut dosyas oluturma snrlamalar zetlenmektedir.Desteklenen ilevler unlar iin yaynlanm SWF dosyalarn ykleyebilir Bu AVM'yi ierir u ActionScript srmlerinde yazlm SWF'leri altrr Flash Player 7 7 ve ncesi Flash Player 8 8 ve ncesi Flash Player 9 ve 10 9 (veya 10) ve ncesi

AVM1 1.0 ve 2.0

AVM1 1.0 ve 2.0

AVM1 ve AVM2 1.0 ve 2.0 ve 3.0

Aadaki tabloda yer alan Desteklenen ilevler, Flash Player 9 veya sonrasnda altrlan ierikleri ifade eder. Flash Player 8 veya ncesinde alan ierikler yalnzca ActionScript 1.0 ve 2.0'da yklenebilir, grntlenebilir, altrlabilir ve bu ieriklerin apraz komut dosyas oluturulabilir.Desteklenen ilevler ActionScript 1.0 ve 2.0'da oluturulan ierik yalnzca ActionScript 1.0 ve 2.0 ActionScript 3.0'da oluturulan ierik

u srmlerde oluturulan ierik yklenebilir ve ierikteki kod altrlabilir u srmlerde oluturulan ieriin apraz komut dosyas oluturulabilir

ActionScript 1.0, 2.0 ve ActionScript 3.0

yalnzca ActionScript 1.0 ve 2.0 (Yerel Balant Yerel Balant zerinden ActionScript 1.0 ve zerinden ActionScript 3.0) 2.0 ActionScript 3.0

9

Blm 3: ActionScript ile almaya balamaBu blm, ActionScript programlamaya balamanz iin tasarlanm olup bu klavuzun geri kalannda karlaacanz kavramlar ve rnekleri anlamak iin ihtiya duyacanz arka plan size salar. ActionScript'te uygulanma ekli kapsamnda aklanan temel programlama kavramlaryla balayacaz. Ayrca ActionScript uygulamasnn organize edilmesi ve oluturulmas temellerini de ele alacaz.

Programlama temelleriActionScript bir programlama dili olduundan, ilk nce birka genel bilgisayar programlama kavramn anlarsanz, ActionScript'i renmeniz kolaylaacaktr.

Bilgisayar programlar ne yaparncelikle, bilgisayar programnn ne olduuna ve ne yaptna dair kavramsal bir fikir edinilmesi yardmc olacaktr. Bilgisayar programnn iki yn vardr:

Program, bilgisayarn gerekletirmesi iin tasarlanm talimatlar veya admlar serisidir. Her adm baz bilgi veya verilerin ilenmesini ierir.Genel anlamda bilgisayar program, bilgisayara verdiiniz ve bilgisayar tarafndan birer birer gerekletirilen adm adm talimatlar listesidir. Talimatlarn her birine deyim denir. Bu klavuzda da greceiniz gibi, ActionScript'te her deyim, sonunda bir noktal virgl olacak ekilde yazlr. Temelde, bir programdaki talimatn yapt tm ey, bilgisayarn belleinde saklanan baz veri bitlerini ilemekten ibarettir. Basit bir rnek vermek gerekirse, bilgisayara iki say eklemesini ve sonucu belleinde saklamasn talimat olarak verebilirsiniz. Daha karmak bir rnek vermek gerekirse, ekranda izili bir dikdrtgen olduunu ve bu dikdrtgeni baka bir yere tamak iin bir program yazmak istediinizi varsayalm. Bilgisayar, dikdrtgenle ilgili belirli bilgileri izler, rn. dikdrtgenin konumlandrld x, y koordinatlar, genilii, uzunluu, rengi, vb. Bu bilgi bitlerinin her biri bilgisayarn belleinde bir yerde saklanr. Dikdrtgeni farkl bir konuma tama program, "x koordinatn 200 olarak deitir; y koordinatn 15 olarak deitir" (baka bir deyile, x ve y koordinatlar iin kullanlacak yeni deerleri belirten) gibi admlar ierecektir. Elbette bilgisayar bu saylar gerekten bilgisayar ekrannda grntlenen grntye dntrmek iin bu verilerle bir eyler yapar; ancak u an iin bizi ilgilendiren ayrnt dzeyine gre, "ekrandaki dikdrtgeni tama" ileminin gerekten bilgisayar belleindeki veri bitlerinin deitirilmesiyle gerekletiinin bilinmesi yeterlidir.

Deikenler ve sabitlerProgramlama temel olarak bilgisayar belleindeki bilgilerin deitirilmesini ierdiinden, programda tek bir bilgiyi temsil etmenin bir yolunun olmas gerekir. Deiken, bilgisayar belleindeki bir deeri temsil eden addr. Deerleri ilemek iin deyimler yazdnzda, deerin yerine deikenin adn yazarsnz; bilgisayar deiken adn programnzda her grdnde, belleine bakar ve orada bulduu deeri kullanr. rnein, her biri bir say ieren, value1 ve value2 adnda iki deikeniniz varsa, bu iki sayy eklemek iin u deyimi yazabilirsiniz:value1 + value2

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 10ActionScript ile almaya balama

Bilgisayar gerekten admlar uygularken, her deikendeki deerlere bakar ve bunlar birbirine ekler. ActionScript 3.0'da, bir deiken farkl blmden oluur:

Deikenin ad Deikende saklanabilen veri tr Bilgisayarn belleinde saklanan gerek deerBilgisayarn, deerin yer tutucusu olarak ad nasl kullandn akladk. Veri tr de nemlidir. ActionScript'te bir deiken oluturduunuzda, bu deikenin barndraca belirli veri trn belirtirsiniz; bu noktadan sonra, programnzn talimatlar deikende yalnzca o veri trn saklayabilir ve siz de o veri tryle ilikilendirilmi belirli zellikleri kullanarak deeri ileyebilirsiniz. ActionScript'te, bir deiken oluturmak iin (deikeni bildirmek de denilebilir), var deyimini kullanrsnz:var value1:Number;

Bu durumda, bilgisayara yalnzca Number verilerini ("Number", ActionScript'te tanml belirli bir veri trdr) barndracak value1 adnda bir deiken oluturmas talimatn verdik. Deikende hemen bir deeri de saklayabilirsiniz:var value2:Number = 17;

Adobe Flash CS4 Professional'da bir deiken bildirmenin baka bir yolu vardr. Sahne Alan'na bir film klibi sembol, dme sembol veya metin alan yerletirdiinizde, zellik denetisinde buna bir rnek ad verebilirsiniz. Flash uygulamas, sahne alannn arkasnda rnek adyla ayn ada sahip bir deiken oluturur ve bu Sahne Alan esini ifade etmek iin ActionScript kodunuzda bu deikeni kullanabilirsiniz. Bylece, rnein Sahne Alan'nda bir film klibi sembolnz olursa ve buna rocketShip rnek adn verirseniz, ActionScript kodunuzda rocketShip deikenini her kullandnzda, aslnda bu film klibini iliyor olursunuz. Sabit, bilgisayarn belleinde belirli bir veri tryle bir deeri temsil eden bir ad olmas asndan deikene ok benzer. Tek fark, sabite bir ActionScript uygulamas srasnda yalnzca bir kere deer atanabilmesidir. Sabitin deeri atandktan sonra tm uygulamada bu deer ayn kalr. Sabit bildirme szdizimi, deiken bildirme szdizimiyle ayndr, tek fark, var anahtar szc yerine const anahtar szcnn kullanlmasdr:const SALES_TAX_RATE:Number = 0.07;

Bir proje boyunca birden ok yerde kullanlan ve normal koullarda deimeyecek bir deeri tanmlamak iin sabit kullanldr. Deimez deer yerine bir sabit kullanlmas, kodunuzu daha okunakl hale getirir. rnein, bir fiyat SALES_TAX_RATE deeriyle arpan bir kod satrnn anlalmas, fiyat 0.07 deeriyle arpan bir kod satrna gre daha kolaydr. Ayrca, bir sabit tarafndan tanmlanan deerin deimesi gerekmiyorsa, projeniz boyunca o deeri temsil etmek iin bir sabit kullanrsanz, sabit kodlu deimez deerleri kullandnzda yaptnz gibi eitli yerlerde deeri deitirmek yerine yalnzca bir yerde (sabit bildiriminde) deeri deitirmeniz gerekir.

Veri trleriActionScript'te, oluturduunuz deikenlerin veri tr olarak kullanabileceiniz birok veri tr vardr. Bunlardan bazlar "basit" veya "temel" veri trleri olarak deerlendirilebilir:

Dize: bir ad veya kitabn bir blm gibi, metin deeri Saysal: ActionScript 3.0, saysal veriler iin zel veri tr ierir: Say: kesirli veya kesirsiz saylar da dahil olmak zere herhangi bir saysal deer int: bir tam say (kesirsiz bir tam say) uint: iaretsiz tam say, baka bir deyile negatif olamayan btn bir say

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 11ActionScript ile almaya balama

Boolean: bir dmenin etkin olup olmad veya iki deerin eit olup olmad gibi, doru veya yanl deeriBasit veri trleri tek bir bilgiyi temsil eder: rnein, tek bir say veya tek bir metin sras Ancak, ActionScript'te tanml veri trlerinin ounluu, birlikte gruplandrlabilen deerler kmesini temsil ettiinden, karmak veriler olarak aklanabilir. rnein, Date veri trne sahip bir deiken, tek bir deeri (tek bir zaman) temsil eder. Ancak, bu deer gerekte birok deer olarak temsil edilir: gn, ay, yl, saat, dakika, saniye, vb. ve bunlarn her biri ayr ayr bir saydr. Bylece, biz tarihi tek bir deer olarak dnrken (ve Date deikenini oluturarak tek bir deer olarak deerlendirebilirken), bilgisayar dahili olarak bunu birok deerden oluan bir grup olarak deerlendirir, bir araya getirir ve tek bir tarihi tanmlar. Programclarn tanmlad veri trlerinin yan sra, yerleik veri trlerinin ou da karmak veri trleridir. Tanyabileceiniz karmak veri trlerinden bazlar unlardr:

MovieClip: bir film klibi sembol TextField: dinamik bir alan veya girdi metni alan SimpleButton: bir dme sembol Date: tek bir zaman (tarih ve saat) hakkndaki bilgiSnf ve nesne szckleri genellikle veri tr iin eanlaml olarak kullanlr. Snf, veri trnn tanmdr, veri trnn tm nesneleri iin bir ablon gibidir, rn. "Example veri trnn tm deikenleri bu zelliklere sahiptir: A, B ve C." sylemine benzer. Nesne ise snfn gerek bir rneidir; veri tr MovieClip olan bir deiken, MovieClip nesnesi olarak aklanabilir. Aada, ayn eyi sylemenin birka farkl yolu verilmitir:

myVariable deikeninin veri tr Number'dr. myVariable deikeni bir Number rneidir. myVariable deikeni bir Number nesnesidir. myVariable deikeni, Number snfnn bir rneidir.

Nesnelerle almaActionScript, nesne odakl programlama dili olarak bilinir. Nesne odakl programlama, bir programlama yaklam olup nesneleri kullanarak bir programda kodu organize etme yolundan fazlasn ifade etmez. Daha nce bilgisayar programn, bilgisayarn gerekletirdii bir admlar ve talimatlar serisi olarak tanmladk. Bu durumda kavramsal olarak bilgisayar tek bir uzun talimatlar listesi olarak dnebiliriz. Ancak, nesne odakl programlamada, program talimatlar farkl nesneler arasnda blnrkod, ilev kmeleri olarak gruplandrlr, bylece ilgili ilev trleri veya ilgili bilgiler tek bir konteynerde bir arada gruplandrlr. Aslnda, Flash uygulamasnda sembollerle altysanz, nesnelerle de almaya hazrsnz demektir. Bir film klibi sembolrnein bir dikdrtgen izimitanmladnz ve bunun bir kopyasn Sahne Alan'na yerletirdiinizi varsayn. Bu film klibi ayn zamanda (gerekten) ActionScript'te bir nesnedir; MovieClip snfnn bir rneidir. Film klibinin deitirebileceiniz eitli zellikleri vardr. rnein, seili olduunda, zellik denetisinde deitirebileceiniz deerler vardr, rn. x koordinat, genilik veya alfa (saydamlk) deitirme ya da glge filtresi ekleme gibi eitli renk ayarlamalar. Dikdrtgeni dndrmek iin Serbest Dntrme aracnn kullanlmas gibi, dier Flash aralar daha fazla deiiklik yapmanza olanak salar. Flash gelitirme ortamnda bir film klibi semboln deitirmek iin kullanabildiiniz tm bu eyleri ayn zamanda MovieClip nesnesi adndaki tek bir kmede bir araya getirilmi verileri deitirerek ActionScript'te de yapabilirsiniz.

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 12ActionScript ile almaya balama

ActionScript nesne odakl programlamada, herhangi bir snfn ierebilecei zellik tr vardr:

zellikler Yntemler OlaylarBu eler, program tarafndan kullanlan verileri ynetmek ve hangi eylemlerin ne srada yaplacana karar vermek iin birlikte kullanlr.

zelliklerzellik, bir nesnede kmelenmi olan verilerden birini temsil eder. Bir ark nesnesi, artist ve title adnda zelliklere sahip olabilir; MovieClip snf rotation, x, width ve alpha gibi zelliklere sahiptir. Tek tek deikenler gibi zelliklerle alabilirsinizaslnda zellikleri bir nesnede bulunan "alt" deikenler olarak dnebilirsiniz. Aada, zellik kullanan birka ActionScript kodu rnekleri verilmitir. Bu kod satr, square adndaki MovieClip esini 100 piksel x koordinatna tar:square.x = 100;

Bu kod, triangle MovieClip esinin dnyle eleecek ekilde square MovieClip esinin dnmesini salamak iin rotation zelliini kullanr:square.rotation = triangle.rotation;

Bu kod, square MovieClip esinin eski halinden bir buuk kat daha geni olmasn salayacak ekilde yatay leini deitirir:square.scaleX = 1.5;

Ortak yapya dikkat edin: nesnenin ad srayla nesnenin adn (square, triangle), bir nokta iaretini (.) ve zelliin adn (x, rotation, scaleX) ierir. Nokta operatr olarak da bilinen nokta iareti, bir nesnenin alt elerinden birine erimekte olduunu belirtmek iin kullanlr. Tm yap olduu gibi "deiken ad-nokta-zellik ad", tek bir deiken gibi, bilgisayar belleindeki tek bir deerin ad olarak kullanlr.

YntemlerYntem, bir nesne tarafndan gerekletirilebilen bir eylemdir. rnein, Flash uygulamasnda, zaman izelgesinde birok anahtar kare ve animasyonla bir film klibi sembol oluturduysanz, bu film klibi oynatlabilir veya durdurulabilir ya da bu film klibine oynatma kafasn belirli bir kareye tamas bildirilebilir. Bu kod, shortFilm adndaki MovieClip esine oynatmay balatmasn bildirir:shortFilm.play();

Bu satr, shortFilm adndaki MovieClip esinin oynatmay durdurmasn salar (oynatma kafas, video duraklatlm gibi yerinde durdurulur):shortFilm.stop();

Bu kod, shortFilm adndaki MovieClip esinin oynatma kafasn Kare 1'e tayp oynatmay durdurmasn salar (videoyu geri sarmak gibi):shortFilm.gotoAndStop(1);

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 13ActionScript ile almaya balama

Grdnz gibi, yntemlere de, tpk zellikler gibi srayla nesnenin ad (bir deiken), nokta iareti, yntemin ad ve parantez iaretleri yazlarak eriilebilir. Parantezler, yntemi ardnz veya baka bir deyile nesneye o eylemi gerekletirmesini bildirdiinizi belirtmenin yoludur. Bazen eylemi gerekletirmek iin gerekli olan ek bilgileri iletmenin bir yolu olarak, deerler (veya deikenler) parantez iine yerletirilir. Bu deerler, yntem parametreleri olarak bilinir. rnein, gotoAndStop() ynteminin hangi kareye gideceini bilmesi gerekir, bu nedenle parantez iin tek bir parametre olmas gereklidir. play() ve stop() gibi dier yntemler kendinden aklaycdr ve bu nedenle de fazladan bilgi gerektirmez. Ancak yine de parantez iinde yazlr. zelliklerden (ve deikenlerden) farkl olarak, yntemler deer yer tutucular olarak kullanlmaz. Ancak baz yntemler hesaplamalar gerekletirebilir ve bir deiken olarak kullanlabilecek bir sonu dndrebilir. rnein, Number snfnn toString() yntemi, saysal deeri metin olarak temsil edilen haline dntrr:var numericData:Number = 9; var textData:String = numericData.toString();

rnein, Bir Number deikeninin deerini ekranda bir metin alannda grntlemek isterseniz, toString() yntemini kullanrsnz. TextField snfnn text zellii (ekranda grntlenen gerek metin ieriini temsil eder), String olarak tanmlanr, bu nedenle yalnzca metin deerlerini ierebilir. Bu kod satr, numericData deikenindeki saysal deeri metne dntrr ve sonra bu metnin ekranda calculatorDisplay adndaki TextField nesnesinde gsterilmesini salar:calculatorDisplay.text = numericData.toString();

OlaylarBilgisayar programn, bilgisayarn adm adm gerekletirdii bir talimatlar dizisi olarak aklamtk. Baz basit bilgisayar programlar, bilgisayarn gerekletirdii ve program sona erdiren birka admdan fazlasn iermez. Ancak, ActionScript programlar srekli alacak ve kullanc girdisinin veya baka eylerin olumasn bekleyecek ekilde tasarlanmtr. Olaylar, bilgisayarn hangi talimatlar ne zaman gerekletireceini belirleyen mekanizmadr. Temel olarak olaylar, ActionScript'in farknda olduu ve yant verdii, gerekleen eylerdir. Kullancnn bir dmeyi tklatmas veya klavyedeki bir tua basmas gibi birok olay kullanc etkileimiyle ilgilidir ancak baka tr olaylar da vardr. rnein, harici bir grnty yklemek iin ActionScript'i kullanrsanz, grnt yklemesinin bittiini size bildiren bir olay vardr. Temelde, bir ActionScript program alrken, Adobe Flash Player ve Adobe AIR durup belirli eylerin gereklemesini bekler ve bu eyler gerekletiinde, bu olaylar iin belirttiiniz belirli bir ActionScript kodunu altrr.

Temel olay ilemeBelirli bir olaya yant olarak gerekletirilmesi gereken belirli eylemleri belirtme teknii, olay ileme olarak bilinir. Olay ileme gerekletirmek iin ActionScript kodu yazarken tanmlamanz gereken nemli e vardr:

Olay kayna: Olayn gerekleecei nesne hangisidir? rnein, hangi dme tklatlacak veya hangi Loader nesnesigrnty yklyor? Olay kayna, Flash Player veya AIR tarafndan olayn hedeflendii (baka bir deyile olayn gerekten gerekletii) nesne olduundan, ayrca olay hedefi olarak da bilinir.

Olay: Gerekleecek ey, yant vermek istediiniz ey nedir? Birok nesne ok sayda olay tetiklediinden bununtanmlanmas nemlidir.

Yant: Olay gerekletiinde hangi admlarn gerekletirilmesini istiyorsunuz?Olaylar ilemek iin her ActionScript kodu yazdnzda, kodda bu e yer alr ve kod bu temel yapya uyar (kaln eler, belirli durumunuz iin dolduracanz yer tutuculardr):

FLASH IIN ACTIONSCRIPT 3.0 PROGRAMLAMA 14ActionScript ile almaya balama

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

Bu kod iki ey gerekletirir. lk olarak, olaya yant olarak gerekletirilmesini istediiniz eylemleri belirtmenin bir yolu olan bir ilevi tanmlar. Daha sonra, ilevin belirtilen olaya abone olmasnn sonucu olarak bu, kaynak nesnenin addEventListener() yntemini arr, bylece olay gerekletiinde ilevin eylemleri gerekletirilir. Bu paralarn her birini daha ayrntl ekilde ele alacaz. lev, eylemleri gerekletirmek zere ksayol ad gibi tek bir ad ile eylemleri bir arada gruplandrmanz iin bir yol salar. lev, bir ynteme benzer, tek fark, ilevin belirli bir snfla ilikilendirilmek zorunda olmamasdr. (Aslnda yntem, belirli bir snfla ilikilendirilmi bir ilev olarak tanmlanabilir.) Olay ileme iin bir ilev olutururken,