Flash’la Hava Durumu

Burda güncel hava durumu bilgilerini XML aracılığıyla Devlet Meteoroloji İşleri Genel Müdürlüğü’nden çeken bir Flash uygulaması yaptım.



XML dosyasında hava durumu resimlerinin nerden çekileceği gibi bilgileri saklıyorum. Böylelikle ileride bir değişiklik olduğunda Flash dosyasını güncellemektense XML dosyasını güncellemem yeterli olacaktır.

xml dosyasını görüntülemek için tıklayınız.

<?xml version=”1.0″ encoding=”UTF-8″?>
<haberler>
<harita1>
<veri  isim=”Bugün”     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritasondurumSH.gif”></veri>
<veri  isim=”gun1″     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritatahmingun1.gif”></veri>
<veri  isim=”gun2″     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritatahmingun2.gif”></veri>
<veri  isim=”gun3″     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritatahmingun3.gif”></veri>
<veri  isim=”gun4″     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritatahmingun4.gif”></veri>
<veri  isim=”gun5″     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritatahmingun5.gif”></veri>
</harita1>
<harita2>
<veri  isim=”Son Durum” link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritasondurumSH.gif”></veri>
<veri  isim=”Hadise”     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritasondurumH.gif”></veri>
<veri  isim=”Sıcaklık”     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritasondurumS.gif”></veri>
<veri  isim=”Rüzgar”     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritasondurumR.gif”></veri>
<veri  isim=”Basınç”     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritasondurumB.gif”></veri>
<veri  isim=”Nem”     link=”http://www.dmi.gov.tr/FTPDATA/analiz/harita/haritasondurumN.gif”></veri>
</harita2>
</haberler>

Flash CS4 dosyasında yazılı olan kaynak kodlar:

import fl.events.ScrollEvent;
var xml_harita:XML;
var xmllist_harita:XMLList;
var xmllist2_harita:XMLList;
var xmlloader_harita:URLLoader=new URLLoader();
xmlloader_harita.addEventListener(Event.COMPLETE,yukle_harita);
xmlloader_harita.load(new URLRequest(“http://www.dahiweb.com/emretakil/hava_durumu_onsayfa/hava_durumu.xml”));

function yukle_harita(event:Event):void
{
xml_harita=XML(event.target.data);
xmllist_harita=xml_harita.harita1.children();

var gunler:Array=[“Pazar”,”Pazartesi”,”Salı”,”Çarşamba”,”Perşembe”,”Cuma”,”Cumartesi”];
var zaman:Date=new Date();
for (var i:int=0; i<xmllist_harita.length(); i++)
{
combo_3.addItem({label:gunler[(zaman.getDay()+i)%7], data:xmllist_harita[i].attribute(“link”)});
}

xmllist_harita=xml_harita.harita2.children();
for (var j:int=0; j<xmllist_harita.length(); j++)
{
combo_4.addItem({label:xmllist_harita[j].attribute(“isim”), data:xmllist_harita[j].attribute(“link”)});
}
aSp.source=xmllist_harita[0].attribute(“link”);
}

aSp.addEventListener(Event.COMPLETE, yukleme_tamam);
function yukleme_tamam(event:Event):void
{

aSp.horizontalScrollPosition=45;
aSp.verticalScrollPosition=0;
//time1.start();
bar.visible=false;
aSp.update();

//trace(aSp);
}

aSp.addEventListener(ProgressEvent.PROGRESS, yukleniyor);
function yukleniyor(event:ProgressEvent):void
{
bar.visible=true;
}

aSp.setSize(270, 240);
aSp.x=3;
aSp.y=-2;

var x1:int;
var y1:int;

var time1:Timer=new Timer(20,0);
time1.addEventListener(TimerEvent.TIMER, zamanlar1);

function zamanlar1(event:Event):void
{
if ((x1<=45)&&(y1<=35))
{
time1.stop();
}
else
{
if (x1>=45)
{
x1=aSp.horizontalScrollPosition;
x1=x1-4;
aSp.horizontalScrollPosition=x1;
}
if (y1>=0)
{
y1=aSp.verticalScrollPosition;
y1=y1-2;
aSp.verticalScrollPosition=y1;
}
}
}

combo_3.addEventListener(Event.CHANGE,combo);
function combo(event:Event):void
{
bar.visible=true;
aSp.source=combo_3.selectedItem.data;

if (combo_3.selectedIndex!=0)
{
combo_4.enabled=false;
}
else
{
combo_4.enabled=true;
combo_4.selectedIndex=0;
}
}

combo_4.addEventListener(Event.CHANGE,combo_);
function combo_(event:Event):void
{
bar.visible=true;
aSp.source=combo_4.selectedItem.data;
}

sol_btn.addEventListener(MouseEvent.MOUSE_OVER,sol);
function sol(event:Event):void
{
time_sol.start();
}

sag_btn.addEventListener(MouseEvent.MOUSE_OVER,sag);
function sag(event:Event):void
{
time_sag.start();
time1.stop();
}

sol_btn.addEventListener(MouseEvent.MOUSE_OUT,sol2);
function sol2(event:Event):void
{
time_sol.stop();
}

sag_btn.addEventListener(MouseEvent.MOUSE_OUT,sag2);
function sag2(event:Event):void
{
time_sag.stop();
}

var time_sol:Timer=new Timer(20,0);
time_sol.addEventListener(TimerEvent.TIMER, zamanlar_sol);
function zamanlar_sol(event:Event):void
{
var d:int=aSp.horizontalScrollPosition;
if(d>10){
d=d-10;
aSp.horizontalScrollPosition=d;}
}

var time_sag:Timer=new Timer(20,0);
time_sag.addEventListener(TimerEvent.TIMER, zamanlar_sag);
function zamanlar_sag(event:Event):void
{
var d:int=aSp.horizontalScrollPosition;
if(d<510){
d=d+10;
aSp.horizontalScrollPosition=d;}
}

sag_btn.buttonMode=true;
sol_btn.buttonMode=true;

Flash CS4  .fla dosyasını indirmek için tıklayınız.

Emre TAKIL  “Bilişim Teknolojileri Öğretmeni”


Yazar: emretakil

Emre TAKIL sitemizde 2 yazı eklemiş...

Share