Ders 65

Bana bu sayfadaki ders hakkında soru yöneltmek için E-posta yollayınız lütfen. Veya FlashDersi.com adlı Facebook grubundan da ulaşabilirsiniz.

Benim tarafımdan hata çıkma ihtimali çok azdır. Bende çalıştığına göre sizde de çalışmalı uygulamalar. Yine de ufak tefek yazım hatası mümkündür tabiiki. Fakat biraz Flash bilgisi ile onları siz düzeltebilmelisiniz.

Derslerin içerikleri belli bir sıraya göre gitmiyor. Aklıma ne gelirse veya ilginç bulduğum, pratik veya işe yarar ne bulursam eklemeye çalışacağım. Eğer belli bir konuda iyi bir örnek görmek istiyorsanız sitemde bunu bana bildirin bir E-posta ile.

Derslerimde CS5.5 ve AS3 kullanıyorum. Bu yüzden fla dosyalarını Flash CS3 ve CS4 ile açarken sorun yaşarsınız.

 

Ders 65 ( Haziran 2011 )

Konu : CS5.5 / AS3 ;XML dosyasındaki verileri rasgele tekrarlanmadan almak.

Gerekenler : Flash CS5 ve bu başlangıç dosyası

Bitmiş hali : tıkla (bunun anlamlı olması için yukarıdaki başlangıç dosyasını indirip ilgili XML dısyasını açıp incelemeniz gerekiyor)

Başlangıç dosyasındaki fla dosyasının ilk frame'ine şu kodları yazınız:

import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.MouseEvent;

var xmlGecici:XML;
var urlLoader:URLLoader;
var urlRequest:URLRequest;

mc.mouseEnabled = false;

urlRequest = new URLRequest("xml.xml");
urlLoader=new URLLoader();
urlLoader.addEventListener(Event.COMPLETE,fYuklendi);

function fYuklendi(evt:Event)
{
xmlGecici = XML(evt.target.data);
}

urlLoader.load(urlRequest);

stage.addEventListener(MouseEvent.CLICK,fKlik);

function fKlik(evt:MouseEvent)
{
if (xmlGecici.soz.length() > 0)
{
// geçerli uzunluktan bir sayı almak
var i:uint = Math.floor(xmlGecici.soz.length() * Math.random());
goster(xmlGecici.soz[i]);
// eskiden kullanılan xmlObje.xmlNode.removeNode(); yerine yeni XML sınıfında delete xmlObje.xmlNode; kullanılır.
delete xmlGecici.soz[i];
}
else
{
mc.txt1.text = "bitti....";
}
}

function goster(soz:String)
{
mc.txt1.text = soz;
mc.gotoAndPlay(1);
}

Bu ders hakkında sorularınızı hakan@FlashDersi.com 'a Ders65 konusuyla yollayabilirsiniz. Fla dosyasını da yollamayı unutmayınız.

yukarı git