Pirmoji klasė ( class )

// July 28th, 2008 // AS3

Sukūriau savo pirmąją AS3 klasę. Klasė skirta paprastiems flash objektams piešti, naudojant flash standartinius metodus ir funkcijas. Taip pat pabandysime šiandien ją išnaudoti.

Visų pirmą susikurkite ActionScript failą ( Main.as ) o ne Flash dokumetą. Įrašome klasės skydą ( package ), atsiminkite kad Klasės pavadinimas turi sutapti su Failo vardu:

package {

import flash.display.MovieClip;

public class Main extends MovieClip {

public function Main() {

}
}
}

p.s. Tie kas naudoją FLASH CS3, reikia atlikti sekanti veiksmą: susikurti Flahs Dokunetą (AS3), ir į Document Class laukelį irašyti klasės failo pavadinimą be galūnės.

.fla ir .as kalsė, šiuo atveju turi būti vienoje direktorijoje.

Taigi po eilutės:
import flash.display.MovieClip;

pridedame dar vieną eilute importuojame dirbtinę klasę ( klasės veikimo principą, aprašymą rasite prikabintuose failuose, straipsnio apačioje ):
import ifmi.graph.MyObject;

po to kai klasė yra importuota, apsirašome naują kintamąjį:

public var drawing : DrawObject;

Šioje stadijoje objektas dar nėra sukurtas. Jis bus kūriamas tada kai bus reikalingas:

drawing = new DrawObject ( "square", false, 1, 0x336699, 40 );

mes turime sukurtą objektą, bet jo Stag’e nerodys. AS3 mano nuomone yra labai protingai padaryta kad kiekvienam kintamajam ar objektui yra priskirta sekančia seka:

  • Aprašymas
  • Sukūrimas
  • Panaudojimas

Tai leidžia laisvai jais manipuliuoti. Mes jau apsirašėme objeką, ji sukūrėme, beliko tik panaudoti:

addChild ( drawing );

Kadangi mes pradžioje extendinome MovieClip’ą kuris yra .fla failo root’e tai addChild ten ir suveiks, bei įkels mūsų piešinį.

Bendra package’o ( skydo ) struktūra atrodo sekančiai:

package {

//šioje vietoje yra importuojamos visos klasės kurios bus naudojamos

public class Main extends MovieClip {

//šioje vietoje yra aprašomi kintamieji kurie bus naudojami

public function Main() {

}

//čia taip pat galime aprašyti kintamuosius

}

}

Parsisiųsti: ifmi.drawObject

p.s. jeigu kas nors dirbęs daugiau su klasėm, prašau pakomentuokitę šią, ar struktūra bloga? ar reikėjo kur nors naudoti static? ar dar kas nors. Ačiū.


Leave a Reply