ActionScript 3 ile Dışardan Swf Yükleyen PreLoader(ön yükleyici)’li bir Portfolyocu Programlamak

Posted on Perşembe, Mayıs 15th, 2008 at 13:16

Kendim için yazmıştım. Yazmışken kaynak kodlarını ve dosyasını paylaşmak istedim.. ProgressBar ve UILoader bileşenlerini birbirleriyle ilişkilendirerek kullanmayı öğrenmiş oluruz…

Uygulamada iki adet hazır bileşen ve bir dynamic text kutucuğu kullanıldı. Bileşenlerden biri ”ön yükleyici bar çubuğu.” diğeri “Dışarıdan yükleyici UILoader”. UILoader dosyayı yüklüyor. Bar ise bunu tespit edip öncesinde ve sonrasında bir takım işlemler gerçekleştiriyor. Proje dosyası ile tümünü incelemeniz gerekiyor..

Ayrıca Parameters menüsünden bileşenlerin birbirleriyle haberleşmesini nasıl sağladığımı inceleyiniz. ProgressBar için yukleDosya_mc (UILoader) i kaynak gösterdik.. yukleDosya_mc için ise kod içinde kaynaklar gösterdik. Ayrıca ilk yükleme için parameters menüsünden bir kaynak gösterdik. Bu kaynak swf’nin yerini daha sonra kodlarla başka biri alıyor.. Ayrıca Parameters menüsünden yine ScaleContent’i false durumuna getirdik. Böylece yeni yüklenen dosyalar kendisinin boyunu değiştirecek. Bunu gibi başka değişikliklerde mevcut olabilir. Bu noktada sizi uygulamayla baş başa bırakıyorum.

Not: Parameters menüsü için Window/Properties/Parameters

(” Tırnak işaretlerini kodlamada yeniden yazınız)

Uygulamanın kaynak kodları:

import fl.events.ComponentEvent;
import fl.containers.UILoader;

var yazi:String= “hazırlanmadı”;
var urun:String = “calisma1″;
var harf:int = 1;
var daktilo:Timer = new Timer(30);
var urunSira:int = 1;

//Portfolyo sayısını buraya giriniz
var urunSayisi:int = 5;

daktilo.addEventListener(TimerEvent.TIMER, yaz);

function yaz(event:TimerEvent):void {

 if (urun == “calisma1″) {
yazi = “1/5 Flash çizim teknikleriyle oluşturulmuş bir 3D çalışması.\nAS3 ile fareye duyarlı hale getirildi. Ortam: Flash CS3 & AS3″;
} else if (urun == “calisma2″) {
yazi = “2/5 Çok önceleri çizdiğim bir logo ve anime edilmiş hali..\nOrtam: Sadece Flash CS3″;
} else if (urun == “calisma3″) {
yazi = “3/5 Yine eskiye ait bir karakter tasarımı. Geliştirdim ve anime ettim..\nOrtam: Flash CS 3 [ile 20 dakikada]“;
} else if (urun == “calisma4″) {
yazi = “4/5 Flash ile 3D logo çalışması. ActionScript içermiyor. İlginç bir tekniği var..\nOrtam: Sadece Flash CS3″;
} else if (urun == “calisma5″) {
yazi = “5/5 Kurumsal talep üzerine yaptığım bir logo çalışması idi..\nOrtam: Macromedia FireWorks 8″;
}

 yazi_txt.text = “” + yazi.substr(0,harf);
harf ++;
}

daktilo.start();

function silYukBar(event:Event):void {

 yukleBar_mc.visible = false;

 addChild(yukleDosya_mc);
setChildIndex(yukleDosya_mc,0);
}

yukleBar_mc.addEventListener(Event.COMPLETE, silYukBar);

///

function degismeOranlari(event:ComponentEvent):void {

 var yuklemeBilgi:UILoader = event.currentTarget as UILoader;
yuklemeBilgi.move((stage.stageWidth - yuklemeBilgi.width) / 2, (stage.stageHeight - yuklemeBilgi.height) / 2 - aciklamaArka_mc.height / 2);
}

yukleDosya_mc.addEventListener(ComponentEvent.RESIZE, degismeOranlari);

///

function yeniGetir(event:MouseEvent):void {
if (urunSira == urunSayisi) {
urunSira = urunSayisi;
} else {
urunSira ++;
}
removeChild(yukleDosya_mc);

 yukleBar_mc.visible = true;
urun = “calisma” + urunSira;
yazi = “”;
harf = 1;
daktilo.start();
yukleDosya_mc.source=”
http://mehmetoglu.org/portfolyo/calisma” + urunSira + “.swf”;
}

function eskiGetir(event:MouseEvent):void {
if (urunSira == 1) {
urunSira = 1;
} else {
urunSira –;
}
removeChild(yukleDosya_mc);

 yukleBar_mc.visible = true;
urun = “calisma” + urunSira;
yazi = “”;
harf = 1;
daktilo.start();
yukleDosya_mc.source=”
http://mehmetoglu.org/portfolyo/calisma” + urunSira + “.swf”;
}

ileri_btn.addEventListener(MouseEvent.CLICK, yeniGetir);
geri_btn.addEventListener(MouseEvent.CLICK, eskiGetir);

// Bu uygulama Burak Aydın  | www.mehmetoglu.org  tarafından geliştirilmiştir

_____________________________________________________________

Uygulamanın Proje Dosyası:

http://mehmetoglu.org/as3_dersler/mehmetoglu_refs.fla

İstersen yorum yazabilirsin, ya da kendi sitenden "geridönüş" (trackback) ekleyebilirsin.

Yazmayan ölsün..

Adın
e-Postan (Yayımlarsam ne olim)
Siten
Gençliğini neyle değerlendirdin?
Yorumun: