Profili Göster

Kim Korkar Preloader'dan?

Engin Gündoğdu Tarih: 24/07/2008 Yorum: 0 adet

Okunma : 339 Tutanlar: Bu yazıyı 2 kişi tuttu.

Preloader(önyükleyici) Flash programını kullanmaya yeni başlayanların en çok zorlandıkları konulardan biridir. Programı kullananların karşılaştıkları ilk karmaşık kodlama diyebiliriz. Korkulacak kadar karmaşık olamadığını dersin sonunda sizlerde göreceksiniz.

Ülkemiz şartlarında internet hızının düşük olması nedeniyle çalışmalarımızın kullanıcı ekranına geç görüntülenmesi, ön yükleyicilerin önemini artırmaktadır. Peki önyükleyici ne işe yarar?

Çalışmamız yüklenirken kullanıcıya çalışma hakkında bilgiler sunabilir,ufak animasyonlarla site devamlılığını sağlayabiliriz.

Bu bilgileri verdikten sonra basit bir önyükleyici yapalım.

Flash programınızı açın ve file > new’i (ctrl+N) tıklayın. Shift +F2 tuşlarına basıp yeni bir scene oluşturun.

Sahneye birtane dynamic text oluşturun properties bölümünden (ctrl+F3) instance name alanına yuzde_txt yazın. Text içerik rengini siyah seçin. Timeline da ilk frame secip window>action(F9) action panelini açıp aşağıdaki kodları yazalım.

onEnterFrame=function(){
    var toplamBoyut:Number=_root.getBytesTotal();
    var yuklenenBoyut:Number=_root.getBytesLoaded();
    if(yuklenenBoyut==toplamBoyut){
        delete  onEnterFrame
        play();
    }else{
        var yuzde:Number=Math.floor((yuklenenBoyut/toplamBoyut)*100);
        yuzde_txt.text=yuzde
    }
}
stop();

İlk önce bahsi geçen kodların açıklamalarını yapalım.

onEnterFrame :Bir movie clip olay denetleyicisidir.Timeline çizgisinin her frame geçişinde çağrılır.

function() :Başlı başına bir konudur.Kısaca, sürekli kulanabileceğimiz kod bloglarını barındıran grublar olarak tanımlayabiliriz.

getBytesTotal() :MovieClip sınıfının bir metodudur.Toplam dosya boyutunu byte olarak gösterir.

getBytesLoaded() :MovieClip sınıfının bir metodudur.O ana kadar yüklenen dosya boyutunu byte olarak gösterir.

if :if değimi koşul belirtir. Koşulun gerçekleşmesi durumda bloğuna ait kodlar çalışacaktır.

else :if değimi ile belirtiğimiz koşulun gerçekleşmemesi durumunda else değiminin altındaki satırlar çalışacaktır

Math.floor : Sayıların ondalık kısımlarını yok sayar.

Şimdi kodların çalışma prensiplerini inceleyelim.

onEnterFrame [/b]olay denetleyicisi sayesinde fonksiyon altındaki satırların sürekli güncellenmesi sağlanıyor. Ana sahnemizdeki(_root)toplam dosya boyutunu toplamBoyut değişkenine atıyoruz. Yüklenen dosya boyutunu da yuklenenBoyut değişkenine atıyoruz. if değimi ile koşul belirtiyoruz.

Eğer bu iki değişken birbirine eşitse alt satırın çalışmasını sağlıyoruz. Alt satırımızda ise onEnterFrame olay denetleyicisini delete operatörü ile kaldırıyoruz ki system kaynaklarını zorlamasın. Play() komutu ile uygulamalarımızın bulunduğu scene 2 ye geçiyoruz.İf değimi ile sağladığımız koşul gerçekleşmezse, else değiminin altındaki satırlar çalışacaktır.

var yuzde:Number=Math.floor((yuklenenBoyut/toplamBoyut)*100);
        yuzde_txt.text=yuzde

yukardaki kod satırını matematiği iyi olanlar hemen kavrayacaklardır.Yinede ben değinmek istiyorum.Burada bir oranlama söz konusudur toplamBoyutta, yuklenenBoyut kadar yükleniyorsa,100’de ne kadar yüklenir.

Bu matematik işleminden dönen sonuçların ondalık kısımlarını Math sınıfının floor metodu ile kaldırıyoruz,bu sayede if şartı gerçekleşene kadar elimizde 1’den 100’e kadar tekrar eden sayıları elde ediyoruz.

onEnterFrame olay denetleyicisi sayesinde kod satırları her çalıştırıldığında, bu sayıları yuzde_txt’mize textfield sınıfının text özelliğini kullanarak yazdırıyoruz. En son olarakda stop() komutu ile flash movienin çalışır çalışmaz oynamamasını sağlıyoruz. Eğer yükleme gerçekleşirse play() komutu ile timeline çizgimiz sahne 2 ye geçecektir.

Ctrl +Enter tuş kodlaması ile çalışmamızı test edelim. Sahnede 100’e kadar sayan sayıları göremeyeceksiniz. Ön yükleyicimizi test etmek için internet ortamına atmalısınız ya da Ctrl + Enter tuşlarına bastıktan sonra çıkan animasyon penceresinden wiew>Sımulate Downloand tıklarsanız önyükleyiciyi test edebilirsiniz.

Korkulacak hiçbir şey olmadığını hep beraber gördük. En alt seviyede anlatmaya çalıştım. Sonraki dersimizde animasyonlu ön yükleyiciler nasıl yapılır?

Karşılaşılan sorunlar nelerdir?Bu soruların cevaplarını hep birlikte çözeceğiz.

aç-kapa İçeriğin rss beslemesi kullanımda değil Yorumlar

İçeriğe kayıtlı yorum bulunmuyor. İlk yorumu siz buradan ekleyebilirsiniz.


MMIstanbul Adobe UG MMIstanbul Adobe UG

adobe user group

ColdFusion, Flex, AIR, Flash, PDF, Dreamweaver, Fireworks, Photoshop, Illustrator, iNdesign, Premiere, Soundbooth, Lightroom, InCopy, JRun, LiveCycle, Acrobat, AfterEffects, Resmi Adobe Kullanıcı Grubu.

yeni üyelik | şifremi unuttum

aç-kapa Konferans IBM Yazılım Zirvesi '08, Değişim Açlığı

IBM Yazılım Zirvesi '08, Değişim Açlığı

Değişim açlığı, Hungry for Change teması çerçevesinde düzenlenecek IBM Yazılım zirvesi Ankara ve İstanbulda düzenlenecek: 15 Ekim 2008 Swissotel the...
Kategori: Konferans

aç-kapa Fuar Contemporary İstanbul Sanat Fuarı

Contemporary İstanbul Sanat Fuarı

Contemporary İstanbul Sanat Fuarı, 16-19 Ekim tarihleri arasında sanatseverlerle buluşacak. Bu yıl üçüncüsü düzenlenen fuar, İstanbul Lütfi Kırdar Ulu...
Kategori: Fuar

aç-kapa Yarışma TBD - Halıcı 15. Bilgisayarla Beste Yarışması

TBD - Halıcı 15. Bilgisayarla Beste Yarışması

TBD – Halıcı 15. Bilgisayarla Beste Yarışması TBD – Halıcı Bilgisayarla Beste Yarışması Türkiye Bilişim Derneği tarafından düzenlenen &q...
Kategori: Yarışma

aç-kapa Seminer MS Project ile Proje Yönetimi

MS Project ile Proje Yönetimi

[b]ZeruMax bilisim hizmetleri MS PROJECT İLE PROJE YÖNETİMİ Ms Project kullaniminin uygulamali ve pratik olarak anlatilacagi bu egitimi kacirmayin&#...
Kategori: Seminer

aç-kapa Yarışma Üniversiteler Arası Öğrenci Filmleri Yarışması

Üniversiteler Arası Öğrenci Filmleri Yarışması

Maltepe Üniversitesi’nin geleneksel olarak düzenlediği 6. Üniversitelerarası Öğrenci Filmleri Yarışması, kitle iletişim alanındaki yapım ve yayı...
Kategori: Yarışma

üyeler Son Kahramanlar...

stats Kimler Burada? web stats

Son 1 dakika içinde MMIstanbul' da 405 (1 kayıtlı, 404 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:

coldfusion mysql ubuntu
 
sponsor adobe istanbul