ana sayfa > Flash Action Script 3 > Flash’la Hava Durumu

Flash’la Hava Durumu

Perşembe, 15 Eki 2009 emretakil yorum ekle yorumlara git

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”


Bu kategorideki rastgele diğer yazılar
  • » Flash'la Kayan Resim Çalışması
    1. Çarşamba, 11 Kas 2009 zamanında 01:15 | #1

      ellerine sağlık,
      ama çalıştıramadım :(
      fla indirdim^CS3 ile açılmadı..

      xml dosyasının adını hava_durumu.xml olarak kaydettim ama olmadı

      sence neden?
      :)

    2. Pazar, 29 Kas 2009 zamanında 22:23 | #2

      CS4 ile düzenlenmiştir.

    3. engino
      Salı, 29 Ara 2009 zamanında 13:42 | #3

      güzel bir çalışma ama nasıl yapacağımız hakkında braz bilgi verseydiniz iyi olurdu :)

    4. Mikail
      Cuma, 22 Oca 2010 zamanında 09:50 | #4

      Sa

      kardeş nasıl kullanabileceğimizide açıklasaydın ben siteme eklemek isterim yani klasik hava durumu yerine bunu kullanabilirim ama nasıl yapılcağını yazmamıssın

    1. şimdilik geri bağlantı yok

    *
    Bu bir spamlara karşı koruma yazılımıdır, resimde gösterilen güvenlik kelimesi girilmelidir. Kelimeyi sesli duymak için resmi tıklayın
    Anti-spam kelimeyi duymak için tıklayın