ÖNEMLİ UYARI:
Flash MX2004 versiyonunda özellikle componentlerde gerek
kod gerekse panellerde oldukça fazla bug mevcut. Alttaki örnek
usulüne uygun hazırlanmasına rağmen webde preloading işlemi çalışmamaktadır.Yalnız
dosyayı indirip test moduna geçtikten sonra View-->Simulate
Download alanını tıkladığınızda önyükleme çubuğunun sonderece
düzgün çalıştığını görebilirsiniz.Umarız bu hatalar daha sonra
düzeltilir.Webde çalışmamasına rağmen genel prensipler örnekte
anlatılmıştır.
Yine webde çalışmanın transparan
özelliği ve scale işlemi de ilk yüklemede gözlenmemektedir.
Sayfa açılıp resim yüklendikten sonra browserdan yenile
tuşuna basınız.Bu durumda problem çözümlenmektedir.
Progressbar component`i ile
Loader component`i birbiri ile son derece uyumlu
çalışırlar.Örneğimizde bu iki component birarada kullanılacaktır.Çalışmayı
hazırlamanın en pratik yolu hem properties panelini kullanmaktır.
1- Sahneye bir loader componenti
yerleştirelim ve instance name kısmına loader
yazalım. Üst kısma yeni bir layer ekleyelim ve bu layerın 1.karesi
seçili iken loader componentinin tam ortasına bir progressbar
componenti yerleştirelim. İsim olarak preload
adını properties paneline ekleyelim.
2- Önce preload nesnemizin
ayarlarını yapalım:
source= Bu alana loader componentinin
ismi yazılır.Çünkü resmin yükleneceği kaynak alan burasıdır.
mode= Event,polled ve manuel
olmak üzere 3 mod vardır. Bara içeriğin yüklenme modunu gösterir.Varsayılan
değer event`tır.Şayet barı elle ayarlamak isterseniz manuel modu
seçmelisiniz.
labelPlacement= Yükleniyor metninin
barın neresinde bulunmasını istiyorsanız bu alandan ayarlayabilirsiniz.
Left,right,top,bottom olmak üzere 4 seçenek vardır. Bu seçenekleri
kullanmak için labelPlacement yazan alana bir kez tıklayın ve
sütunun hemen sağındaki açılır menüden değişikliği uygulayın.
label= Bu alandaki verileri
değiştirmeyin. Gördüğünüz %3%% bu değer yüklenen
veri ile yüklenecek veri arasındaki oranın güncellenen yüzdesini
gösterir.Bu string size garip gözükebilir. Aslında bu stringin
gerçek yazılımı %3%2%1şeklindedir.%3
alanı yüklenen veri ile yüklenecek verinin güncel yüzde oranını
gösterir. %2 alanı yüklenecek verinin ( yani
resim dosyasının ) total miktarını gösterir. %1
alanı ise o an yüklenen güncel byte miktarını gösterir. Şayet
bu alana %3%2%1 yazarsanız barda sol tarafta
yüklenen güncel yüzde oranını, ortada sabit duran dosya boyutunun
byte değerini ve sağda devamlı güncellenen o anlık yüklenen byte
miktarını görürsünüz.1,2 ve 3 rakamlarından hangisini yazmaz ve
alanı % şeklinde bırakırsanız bunun temsil ettiği değerler çalışmada
gözlenmezler.
direction= Varsayılan değer
right`tır. Bu şekilde bırakırsanız bar soldan sağa doğru ilerler.isterseniz
ters değer olan left seçeneğini kullanabilirsiniz.
conversion= Varsayılan değer
1`dir Bu rakam mevcut ve yüklenecek byte oranını ayarlayan bir
dönüşüm değeridir.Kilobyte üzerinden byte değerini 1024 olarak
da düzenleyebilirsiniz. Bunun için alana 1024 yazmanız yeterli
olur.
3- Şimdi loader nesne ayarlarına
geçelim:
Bu kodların detaylarını kendi bölümünde anlatacağız.Kısaca:
autoLoad= Bu alana true yazarsanız
yükleme otomatik olarak sağlanır. False değerlerde ise yükleme
için loader.load() komutu ile çağrılmayı
bekler.
contentPath= Bu alana yüklenecek
resmin veya swf dosyasının tamyolunu yazmalısınız.
scaleContent= Yüklenen dosya
loader componenti içine sığacak şekilde ölçeklenir. false değerlerde
ise yüklenme gerçek dosya ebadları ile olur.
İlk 2 dizin stil ayarı içindir. Son komuttaki
amacımız resim dosyası tam olarak loader componentine yüklendiğinde
bar görüntüsünün sahnede gözükmemesi içindir.
ProgressBar Component Kodları
ProgressBar.setProgress():
Şayet ProgressBar.mode özelliğini "manuel"
olarak ayarlarsanız bu kod grubunu kullanabilirsiniz. Barın ilerleme
özelliğini ayarlayabilirsiniz.
pBarInstance.setProgress(completed,
total); şeklinde kullanılır. Burada completed barın ilerleme
miktarını total ise %100 değerini aldığı durumu gösterir. örneğin
ana sahnede flash oynatma kafasının hareketi alttaki kodla gösterilir:
pBar.setProgress(_currentFrame,
_totalFrames);
ProgressBar.complete :
Yüklenme tamamlandığında oluşturulmuş bir nesneye
atanan tüm işlemler veya uygulamalar devreye girer.Örneğin:
listener = new Object();
listener.complete = function(eventObject){
trace("Yükleme tamamlandığında burada oluşturulan işlemler
çalışır");
}
pBar_instance_name.addEventListener("complete", listener);
Progressbar modu bu işlem için event olarak ayarlanmış
olmalıdır.
Progressbar.progress:
Progressbar modu "manuel" veya "polled"
şeklinde ayarlanmışsa kullanılabilen bir kod grubudur. progressbar
tetiklendiği anda bir nesneye atanan kodlar devreye girer.
listener=new Object();
listener.progress = function(eventObj){
trace("progressbar tetiklendiğinde burada oluşturulan işlemler
çalışır"););
}
pBar_instance_name.addEventListener("progress", listener);
Progressbar.conversion:
Varsayılan değer 1`dir Bu rakam mevcut ve yüklenecek
byte oranını ayarlayan bir dönüşüm değeridir.Kilobyte üzerinden
byte değerini 1024 olarak da düzenleyebilirsiniz. Bunun için:
pBar.conversion = 1024;
yazmanız yeterli olur.
Progressbar.direction:
Varsayılan değer right`tır. Bu şekilde bırakırsanız
bar soldan sağa doğru ilerler.isterseniz ters değer olan left
seçeneğini kullanabilirsiniz.
pBar.direction = "left";
ProgressBar.indeterminate:
pBar.indeterminate = true;
yazdığınızda barda yüklenen veri miktarını gösteren solid yapı
yerine sarmal görünümlü hareketli bir bar gözlenir. Yüklenen veri
miktarının gösterilmediği durumlar için kullanabilirsiniz.
ProgressBar.label:
Yukarıda anlatılan label alanını
okuyunuz.
ProgressBar.labelPlacement:
Yükleniyor metninin barın neresinde bulunmasını
istiyorsanız bu alandan ayarlayabilirsiniz. Left,right,top,bottom
olmak üzere 4 seçenek vardır.
pBar.labelPlacement = "top";
ProgressBar.maximum:
ProgressBar modunu "manuel" olarak
ayarlama kaydı ile barın yükleneceği en büyük değeri verir.
pBar.maximum = _totalframes;
bu kodlar en yüksek değeri yüklenen flash uygulamasının total
frame sayısına ayarlar.
ProgressBar.minimum:
Yine manuel modunda barın alacağı minimal değeri
atar.
pBar.minimum = 0;
ProgressBar.mode:
Event,polled ve manuel olmak üzere 3 mod vardır.
Bara içeriğin yüklenme modunu gösterir.Varsayılan değer event`tır.Şayet
barı elle ayarlamak isterseniz manuel modu seçmelisiniz. Bir loader
componenti ile beraber kullanıldığı durumlarda event moduna geçmek
şarttır. Bir film klibi yüklerken getBytesLoaded() ve getBytesTotal()
özelliklerini kullanacaksanız polled modu uygun olacaktır.
pBar.mode = "event";
ProgressBar.percentComplete:
Verilerin yüklenme yüzdesini gösterir.
ProgressBar.source:
Verilerin yükleneceği alanın instance name`ini
içerir. örneğin bizim yukarıdaki örneğimizde veriler loader isimli
componente yüklendiğinden kodumuz:
preload.source = loader;
şeklinde yazılır.Progressbar modu event veya polled şeklinde ayarlanmış
olmalıdır.
ProgressBar.value:
ProgressBar.minimum ve ProgressBar.maximum arsındaki
bir değerdir.varsayılan değer sıfırdır.