AS2 ile hazırlamaya başladığım bir galeriyi AS3 ile yeniden oluşturmaya karar verdim bu sayede AS3'e geçmiş olurum diye düşündüm. Biraz daha farklı bir şekilde oluşturmak istedim bir önceki bölümde sorduğum fonksiyonu. Bazı Türkçe kaynaklardan ve
flash Help sayfalarından biraz araştırarak bu aşamaya getirdim.
Önce kodlarımı ekleyeyim sonra da sorularımı
var galerim:XML = new XML();
var xml_url:URLRequest = new URLRequest("mg.XML");
var yukleyici:URLLoader = new URLLoader(xml_url);
yukleyici.addEventListener(Event.COMPLETE, xml_yuklenen);
function xml_yuklenen(event:Event):void {
galerim = XML(yukleyici.data);
var toplam=galerim.kategori.length();
var bos = new MovieClip();
bos.x=30;
bos.y=30;
addChild(bos);
//
function menuler() {
var i = 0;
for (i= 0; i<toplam; i++) {
var my_menu = new Sprite();
my_menu.graphics.beginFill(0xFFFFFF);
my_menu.graphics.drawRect(0, 0, 300, 50);
my_menu.y=(my_menu.height+1)*i;
//
bos.addChild(my_menu);
//
var yazi = new TextField();
yazi.text = galerim.kategori[i].@*;
yazi.autoSize = TextFieldAutoSize.LEFT;
yazi.y=5;
yazi.x=5;
yazi.selectable=false;
//
var yazi_format = new TextFormat();
yazi_format.font = "Swiss 721 Bold Extended BT";
yazi_format.color = 0xb7b7b7;
yazi_format.size = 40;
yazi_format.letterSpacing=-2;
my_menu.addChild(yazi);
yazi.setTextFormat(yazi_format);
//
var sayi= galerim.kategori[i].foto.length();
var j = 0;
my_menu.addEventListener(MouseEvent.MOUSE_DOWN, menu_tikla);
function menu_tikla(event:Event) {
for (j=0; j<sayi; j++) {
var my_contact:Sprite = new Sprite();
my_contact.graphics.beginFill(0xb7b7b7);
my_contact.graphics.drawRect((30+1)*j, 550, 30, 30);
bos.addChild(my_contact);
}
}
}
}
menuler();
1: yazi_format.
font = "Swiss 721 Bold Extended BT"; diye eklediğim fontu embed yapmak istiyorum, yardım konularına baktım ama çözemedim. Herhangi bir text alanı olmadığı için sahnede vs. kodlarla nasıl oluşturacağımı çözemedim yani.
2: my_menu.addEventListener(MouseEvent.MOUSE_DOWN, menu_tikla); fonksiyonu gerçek sayıya ulaşamıyor. trace yaptığımda 'sayi'nin doğru yazildiğini görüyorum, dolayısıyla my_menu Sprite'ini ayarlayamıyorum sanırım...
Library'de herhangi bir şey yok, hepsini burda oluşturuyorum.
3: Aslında bu tam
sorun değil ama, tüm kodları xml_yuklenen fonksiyonu içinde oluşturmak zorunda kaldım, onu kapatıp yeni fonksiyon olarak başlatırsam
XML dosyama ulaşamıyorum, yani verdiğim değerleri yanlış rakamlarda görüyor. galerim.length vs. gibi değerleri yani. Bunların bu fonksiyon içinde olması bir
sorun oluşturur mu?
4: my_menu'ye MOUSE_DOWN komutu verdiğim için üzerine gelince el olmasını istiyorum ama ok olarak kalıyor, Sprite olduğu için mi?