Kullanacağımız XML dosyasını notepad'de aşağıdaki gibi oluşturup kaynak.xml olarak kaydediyoruz.

Note pad’de oluşturmuş olduğunuz bu dosyayı kaynak.xml olarak kaydediyoruz. Artık XML tarafında işimiz bitti.şimdi Macromedia Flash 8’i açıyorum.
2- karşımıza çıkan stage’in boyutlarını 200*500 yapıyoruz.4 adet layer ekliyoruz

3-daha sonra layer’iyi secili hale getirip ilk frame seçili iken stage uzerine 200*500 boyutlarında tum stage’ı kaplayacak şekilde bir shape çiziyoruz. Eklediğimiz shape’in uzerinde sağ tıklayarak

4-Şimdi menumüzü hazırlayalım. Öncelikle flash bilginizin olması bu kısmın anlaşılması açısından çok önemlidir.layer2 uzerindeki ilk frame’i secelim ve textTool aracı ile Menu adında bi yazı yazalım. Ardından sağ tıklayıp convert to Symbol diyelim ve movie clip seçeneyini seçelim Ok diyelim
Ve movi clip’e menum adını verelim ve menu clip seçili iken instance name'ine baseLink diyoruz.
5-Şimdi sıra geldi menumuze efekt vermeye.. bunun için menum adlı movi clip uzerine çift tıklayalım ve içerisine girelim.
Aşağıda göstermiş olduğum layerları oluşturalım.

Şimdi sırasıyla şu işlemleri yapalım
1- Layer1’in ilk frame’ine gelelim ve aşağıdaki şekli çizelim ve onuda bir moviclip’e dönüştürelim adınıda TıklamaAlanı olarak verelim.

· Ardından layer2’nin 1. frame’i uzerine gelelim ve textTool aracı ile menu yazalım ve aynı şekilde sağ tıklayıp onuda movie clip’e cevirelip adını da TextWordsShad olarak verelim.
Bu alanında instance name’ini TextLinkShadow olarak verelim gölge amacıyla kullanacağız
2-Layer3’un ilk frame’ine bir tooltext aracı ile Menu yazısı yazalım yalnız renk olarak layer2 ‘dekinden farklı bir renk kullanalım. Bunuda movie clip’e çevirelim ve instance name olarak TextLink verelim.
Şimdi sıra geldi Text i efektle hareket ettirmeye bunun içinde layer3’e ait timeline uzerine aşağıdaki gibi motion tween efekti verelim.(0-19 framleler arası)
şekildeki gibi motion twen efekti verilir
Şimdi sıra geldi men unun yanlarında ki çıkan küçük oku oluşturmaya. Bunun için layer4’ ü kullandım. Ve layer4’ün ilk frame’ine dilediğim şekilde çok ufak bi okcuk çizdim ve aşağıdaki timeline’ı layer4 için oluşturdum.
0-10 nolu frameler arasını kullandım.
· Şimdi sıra geldi beklide en güzel yere.burada layer5’i kullanarak time line uzerindeki framelerin gorunme şekillerini action kullanarak yapacaz.
Öncelikle: 0-19 nolu frame’ler arasını kullanacağım için burayı ayırıyorum.
Layer5’in ilk frame’i seçili iken aşağıdaki action codlamasını yapıyorum

Burada Mouse ile uzerine gelindiğinde2. frame’e gidilecek ve sonra 1. frame’e gidip orda kalacak anlamına gelir.
Ardından layer5’in 2. frame’inin üzerine gelip

Buda timeline ‘da 10. frame’e konumlanmayı sağlar.
- frame uzerine gelip
gotoAndStop(9); kodlamasını yaparız bölece durmasını sağlarız
19. frame dede gotoAndPlay(1); yazarak tekrar olayların başa dönmesini sağlarız
Tüm bu işlemler sonunda layer5’in timeline daki durumu şekildeki gibi olur.

Sıra geldi menuye url eklemeye bunun içinde layer6 yı kullandım.
0-19 nolu frame’ler arasına aşağdaki kodlamayı yaptım

Son olarak hazırlamış olduğum menu için moviclip şekildeki gibi gozukur.

Şimdi ana stage’e geri donuyoruz
Karşıma şekildeki görüntü çıkacak.

Burada layer3’un 2. ve XML yukle layer’ınında 1. frame’ine action kodları yazılmış.
XML yukle deki actions’ı açıklayalım,
var yPos = 20;// menun stage uzerindeki pozisyonu yukarıdan 20px
var depthCount =2;//inilecek nod derinliği
var linksXML = new XML(); //linkler burada tutulacak
linksXML.ignoreWhite = true;
linksXML.load("kaynak.xml");//kaynaktan yukleme yapılmasısağlandı
linksXML.onLoad = checkLoading;//yukleme için fonksiyon degeri aktarılıyor.
function checkLoading(success) {
if (success == true) {
var rootNode = linksXML.firstChild;//ilk root alındı
var total = rootNode.childNodes.length;//toplam çocuk rootların uzunluğu yani alt menu
var tLink = rootNode.firstChild;//ilk root yuklendi
for (i=0;i<total;i++) {
createLink("tLink" + i, tLink);//ana rootlara ait menu olusturuluyor.
var totalInner = tLink.childNodes.length;
var tnLink = tLink.firstChild;
for (j=0;j<totalInner; j++){
createLink("tnLink" + j + ""+ i, tnLink);// altmenuler olusturuluyo
tnLink = tnLink.nextSibling;
}
tLink = tLink.nextSibling;
}
gotoAndStop(2);
}
}
// bu fonksiyonla menu ve alt menuleri olusturduk.
function createLink(newObj, aNode){
duplicateMovieClip(_root.baseLink, newObj, depthCount++);
var tcl = eval(newObj);
tcl.aLink = aNode.attributes.ref;
yPos +=30
if (aNode.nodeName == "menu"){
setName(tcl, aNode.attributes.name, 1);
tcl._x = 50;
}
else{
setName(tcl, aNode.attributes.name, 0.95);
tcl._x = 60;
}
tcl._y = yPos;
}
gotoAndStop(1);
function setName(obj, theName, Size){
obj._height = obj._height*Size;
obj._width = obj._width*Size;
obj.TextLink.BoxName.text = theName;
obj.TextLinkShadow.BoxName.text = theName;
obj.embedFonts = true;
}
Layer3’un de 2. frame’ine aşağıdaki kodlamayı yaptım.
duplicateMovieClip(_root.text2, "text4", 4);//kopyaladım
text4._y-=30;
setName(text4, "Nada");// Font isimi verdim
setName(text2, "Todo");//Font isim verdim
Arkadaşlar projenin tamamına buradan