ActionScript 3.0: Bileşenler (Components) I
ActionScript 3.0: Bileşenler (Components) I
Bu derste;
- Bileşenlerin özellikleri
- Bileşenleri Flash Uygulama Dosyasına Ekleme
- Bileşenleri ActionScript İle Çalıştırma
- Bileşenleri Silme
- Bileşenlerin Versiyonunu Öğrenme
- ActionScript 3.0 Event Handling Model
- Bileşenlerin İşletim Sisteminde Tutulduğu Yerler
konularına değinilmiştir.
Flash uygulamalar geliştirirken, birçok bileşene ihtiyaç duyulmaktadır. Bu ihtiyacı Flash kendi içinde barındırdığı components (bileşenler) ile karşılamaktadır. Bu bileşenlere Flash CS3 programında mönü çubuğundan Window > Components ile ulaşılabilir. ![]()
Programcıların aşina olduğu bu bileşenler, buton tıklama, check box işaretleme , metin oluşturma gibi kullanıcı arayüz kontrollerinden veri yüklenmesi, video oynatılmasına kadar bir çok işleve sahiptir. Flash CS3’teki bu bileşenlerin parametre değerlerini değiştirerek, bileşenlerin görünümü ve davranışları üzerinde oynamalar yapılabilir. Bileşenler çok hızlı ve sağlam bir şekilde uygulama geliştirmek için çok faydalı araçlardır. Yukarıdaki “components” listesinde yer alan bileşenlerden birini Flash uygulama ekranına sürükleyip bırakmakla bileşenlere ulaşıp onlar üzerinde parametre değişiklikleri ile gerekli müdahaleler yapılabilir. Tabiî ki buradaki her bir bileşenin kendine ait ActionScript metodu, özellikleri ve olayları vardır. Böyle olunca da ActionScript 3.0 bileşenlerinin yapısının, sınıf (class) yapısına dayandığını söyleyebiliriz.
Bileşenlerin Faydaları
Öncelikle bileşenleri kullanmak program geliştiricinin uygulama hazırlamdaki hızını artıracaktır. Programcı bileşenlerin, rengine, büyüklüğüne, yerine, davranışlarına onların parametre değerlerini değiştirerek müdahale edebilecek. Bileşenler aslında programcının emrine verilmiş hazır işlevsel paketlerdir. Programcı bu paketin nasıl çalıştığıyla çok fazla ilgilenmeden, bu paketi yani bileşeni kendi uygulamalarına nasıl adapte edebileceği ile uğraşmaktadır.
Nesne Yönelimli Programlamaya dayalı ActionScript 3.0 ile bileşenleri kontrol etmek hem daha kolay hem de daha hızlı olmaktadır. Ayrıca ActionScript 3.0 ve bileşenlerle, tekrar kullanılabilir kod mantığı ile daha zengin Internet uygulamaları hazırlamak da pek zor değil. FLA tabanlı kullanıcı arayüzü bileşenleri sayesinde, bileşenler üzerinde rahatlıkla değişiklik yapılabilmektedir. Yeni FVLPlayback bileşeni, FLVPlaybackCaptioning özelliği ile tam ekran desteği, görünüm rengini değiştirebilme, saydamlık ayarlarını değiştirebilme gibi videolar üzerinde güçlü etkiye sahip olmaktadır. Property alanı ise; bileşenlerin özelliklerinin değiştirildiği yönetimsel bir araçtır. ComboBox, List, ve TileList gibi dialog kutuları kullanıcı ara yüzünde veri sağlayıcı olarak program geliştiriciye büyük kolaylık sağlamaktadır. Ayrıca UIComponent sınıfının varlığı ile kullanıcı ara yüzü programlamada üstünlük sağlanmaktadır.
Bileşenleri (Components) Flash Uygulama Dosyasına Eklemek
a)Flash programında mönü çubuğundan Window > Components tıklayın. b)Aşağıdaki listeden istediğiniz bileşene çift tıklayarak veya sürükle bırak yöntemi ile dokümana ekleyin.
c) Bileşenleri ekranda istediğiniz yere taşıyarak “Properties” alanında instance name’ne bir ad verin. Eğer “Property” alanı görünmüyorsa mönü çubuğundan Window > Properties > Properties seçin.
d) “Property” denetim aracındaki “Parameters” sekmesinden istediğiniz değişikliği yapabilirsiniz.
Bileşenleri (Components) ActionScript İle Çalıştırmak
a) Bir bileşeni ActionScript ile çalıştırırken öncelikle bileşen kütüphaneye (Library) dahil edilmelidir. Bunu yapmak için bileşen, Components panelinden Library paneline sürüklenmelidir. Eğer Library paneli görünmüyorsa mönü çubuğundan Window > Library seçilmelidir.
b) Bileşenler paketler halinde sınıf yapısı içindedir. Bileşenlerin özellikleri, davranış şekilleri hep bu sınıf dosyalarında belirtilmiştir. Diyelim ki; bir buton bileşeni uygulamaya dahil edilecek, o zaman buton sınıfı “import” komutu ile bulunduğu packetten (package) tam yolu belirtilerek çağrılır. Bu yaklaşım OOP’de sınıf (class) yapılarını kullanmada gerekli olan bir yaklaşımdır.
import fl.controls.Button;
c) Buton sınıfını kullanabilmek için bu sınıfın bir örneğinin oluşturulması gerekir. Artık “deneme_btn” adında bir buton örneği oluşturulmuş oldu.
var deneme_btn:Button = new Button();
d) Son olarak oluşturulan bu buton örneğinin sahneye taşınması için statik metot olan addChild() çağrılır.
addChild(deneme_btn);
Bileşenleri (Components) Silmek
Bir bileşeni sahneden silmek için tasarım aşamasında bileşeni seçip “Delete” tuşuna basarak silebilirsiniz. Ancak bu bileşen tamamıyla uygulamadan kalkmış sayılmaz. Bileşeni tüm Flash dosyasından silmek için Library’de bulunan bileşeni ve tüm öğelerini de silmek gerekecektir. Aksi halde programı derleme aşamasında bileşenin uygulamadan kalkmadığı görülecektir.
Bileşenlerin (Components) Versiyonunu Öğrenmek
Flash ActionScript 3.0 bileşenlerinin kendilerine ait versiyon özellikleri vardır. Bunu öğrenmek için bir bileşeni örneğin bir ComboBox bileşenini sahneye sürükleyip instance name olarak “deneme_cb” adını verin. Sonra F9 ile ActionScript panelini açıp
trace(deneme_cb.version);
FLVPlayback ve FLVPlaybackCaptioning bileşenlerinin versiyon özellikleri için;
import fl.video.*;
trace("FLVPlayback.VERSION: " + FLVPlayback.VERSION);
trace("FLVPLaybackCaptioning.VERSION: " + FLVPlaybackCaptioning.VERSION);
ActionScript 3.0 Event Handling Model
ActionScript 3.0 olay yönetme modeli, Document Object Model (DOM) Level 3 Events Specification’na bağlı olarak gerçekleşmektedir. ActionScript 3.0’da olay dinleyicilerini (event listeners) uygulamalara eklemek için; addEventListener(); ifadesi kullanılır. ActionScript 3.0’da sadece fonksiyonlar veya metotlar olay dinleyicisi olabilir.
Aşağıda bir ActionScript 3.0 olay yönetme model örneği görülmektedir. Burada bir MouseEvent.CLICK olayı dinlenip deneme_btn butonuna uygulanmaktadır.
deneme_btn.addEventListener(MouseEvent.CLICK, tikla);
function tikla(event:MouseEvent):void
{
trace("tikla fonksiyonu " + event.type+ " olayını farketti!");
trace("Olay " + event.target.name+" de meydana geldi.");
}
// Kullanılan tüm bileşenlerin sınıfları çağrılıyor
import flash.events.Event;
import fl.events.ComponentEvent;
import fl.events.ColorPickerEvent;
import fl.controls.RadioButtonGroup;
var rbGrp:RadioButtonGroup = RadioButtonGroup.getGroup("fontRbGrp");
// Bütün radio butonları gruplandırılıp grup adları fontRbGrp yapılıyor
rbGrp.addEventListener(MouseEvent.CLICK, rbHandler);
// radio butonları tıklandığında hangi fonksiyon çalışacak
txtCp.addEventListener(ColorPickerEvent.CHANGE,cpHandler);
// Color Picker tıklandığında hangi fonksiyon çalışacak
msgCb.addEventListener(Event.CHANGE, cbHandler);
// ComboBox tıklandığında hangi fonksiyon çalışacak
var tf:TextFormat = new TextFormat();
// radio butonlarını seçince neler olacağı belirleniyor
function rbHandler(event:MouseEvent):void
{
switch (event.target.selection.name) {
case "smallRb" :
tf.size = 14;
break;
case "largerRb" :
tf.size = 18;
break;
case "largestRb" :
tf.size = 24;
break;
}
aTa.setStyle("textFormat", tf);
// Text Area özelliği tf text ine göre ayarlanıyor
}
function cpHandler(event:ColorPickerEvent):void
{
// color picker bir renk seçince bu tf text inin rengi oluyor
tf.color = event.target.selectedColor;
aTa.setStyle("textFormat", tf);
// Text Area özelliği tf text ine göre ayarlanıyor
}
function cbHandler(event:Event):void
{
aTa.text = event.target.selectedItem.label;
// ComboBox tan seçilen menü etiketi Text Area özelliğine aktarılıyor
}
Bileşenler İşletim Sisteminde Nerede Saklanmaktadır?
Bileşenler, işletim sistemlerinde göre şu yerlerde kuruludur: Windows 2000 veya Windows XP için şu yerlerde kuruludur: C:\Program Files\Adobe\Adobe Flash CS3\language\Configuration\Components ■
Mac OS X: Macintosh HD:Applications:Adobe Flash CS3:Configuration:Components
Ayrıca kullanıcı profiline göre işletim sistemlerinde şu yerlerde kuruludur:
Windows 2000 veya Windows XP: C:\Documents and Settings\username\Local Settings\Application Data\Adobe\Adobe Flash CS3\en\Configuration\Components
Mac OS X: Macintosh HD:Users:<username>:Library:Application Support:Adobe Flash CS3:Configuration:Components
Bileşenlerin, ActionScript (.as) sınıf dosyaları şu yerlerde saklı tutulmaktadır:
Windows 2000 veya Windows XP: User Interface components için; C:\Program Files\Adobe\Adobe Flash CS3\en\Configuration\Component Source\ActionScript 3.0\User Interface\fl
FLVPlayback için; C:\Program Files\Adobe\Adobe Flash CS3\en\Configuration\Component Source\ActionScript 3.0\FLVPlayback\fl\video
FLVPlaybackCaptioning için; C:\Program Files\Adobe\Adobe Flash CS3\en\Configuration\Component Source\ActionScript 3.0\FLVPlaybackCaptioning\fl\video
Mac OS X:
User Interface components için;
Macintosh HD:Applications:Adobe Flash CS3:Configuration:Component Source:ActionScript 3.0:User Interface:fl
FLVPlayback için;
Macintosh HD:Applications:Adobe Flash CS3:Configuration:Component Source:ActionScript 3.0:FLVPlayback:fl:video
FLVPlaybackCaptioning için;
Macintosh HD:Applications:Adobe Flash CS3:Configuration:Component Source:ActionScript 3.0:FLVPlaybackCaptioning:fl:video
Yazan: Muttalip TULGAR
Bir sonraki dersimiz, “ActionScript 3.0: Bileşenler (Components) II” de görüşmek üzere…
