Разбирам добре синтаксиса на AS3, но всички типове и странната йерархия и цялото наследяване е малко объркващо и имам проблеми просто да накарам нещо да се покаже. Виждам всички тези команди като addChild(etc); но те не ми казват как да го използвам, за да направя нещо. И как се казва основният прозорец на флаш? Как мога да задам свойствата му с AS3?
Има ли лесно обяснение за кодиране в AS3 с Flash?
Отговори (3)
отново, както при Как да настроя стая за игри в чист екшънскрипт? прочетете някои ръководства, уроци и т.н
http://www.senocular.com/flash/tutorials/as3withflashcs3/ ‹ -- това е добро безплатно ръководство за начинаещи, което дава преглед на всички ваши въпроси.
Основният флаш прозорец може да бъде свързан с персонализиран клас по ваш избор, който наследява от MovieClip. Ще видите в долната част на потребителския интерфейс на Flash свойство, наречено клас на документа. Ако зададете това на клас по ваш избор, можете да започнете да го използвате като основен прозорец.
Например да кажем, че имате клас, наречен MainWindow (за простота), който свързвате към вашия .fla чрез свойството на класа на документа. Ако след това плъзнете филмов клип с име car на сцената и му дадете име на екземпляр „theCar“, можете да получите достъп до него чрез файла на класа MainWindow, като просто напишете:
theCar.alpha = .5;
Или ако искате динамично да добавяте елементи, ще трябва да свържете самите филмови клипове с класове, на които след това можете да създавате екземпляри. Например, ако свържете филмовия клип за грижа към клас, наречен Car_mc, можете да го инстанциирате в класа на главния прозорец по следния начин:
var car:MovieClip = new Car_mc();
addChild(car);
Това ще създаде екземпляр на филмовия клип и ще го добави към сцената като дете на вашия основен клас.
За да свържете филмов клип към клас, просто щракнете с десния бутон върху символа в библиотеката и изберете „свързване“ и след това маркирайте „експортиране за actionscript“, след което можете да попълните име на клас и базов клас за този символ и да го инстанциирате, както описах по-горе .
addChild(x) = this.addChild(x), "това" е пропуснато. "това" е начинът, по който се извикват основните ви прозорци или "сцената" на езика на флаш. Сцената е обект, обикновено от тип Sprite. Може да бъде MovieClip, който е по-напреднал и вероятно не е толкова полезен за "сцена"
addChild е доста проста, плъзгате към библиотеката всяка контрола, която искате да използвате (като импортиране), да кажем, че плъзгате Input, след което създавате файл със скрипт за външно действие .as, от който можете да получите достъп до тази контрола, като създадете нов контролен обект и го зададете Имоти. Важно е да накарате вашия външен клас да наследява от обект Sprite (който е по-проста форма от обекта MovieClip).
Повечето ppl, които влизат във Flash, обикновено не успяват да получат събития, защото те са доста уникални за AS и може би за Javascript. Ако ги получите, вие сте на прав път.