Kullanıcıya Ait Cevap
19/03/2010 - 21:47:40 cevap (1) Okunma : 357 Bu yazıyı 0 kişi tuttu.
setInterval
var pozisyon:Number=0;
var deger:Number=5+Math.floor((this.sicaklik.value)/10); ---> numericten secilen değeri alıyorum
function bilyehareket(){
trace(pozisyon);
if(this.bilye_mc._y<=160)
{
pozisyon+=deger;
this.bilye_mc._y=pozisyon;
}
}
bilyehareket(); -----------------> burada moviclip in yeri değişiyor 1 defa
setInterval(bilyehareket,1000);--> burası çalışmıyor aslında trace yapınca pozisyon artıyor ama işte movieclip in yeri değişmiyor
Etkinlikler
Toplantı
Özgür Yazılım ve Linux Günleri '10
Özgür Yazılım ve Linux Günleri '10
İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü ve Linux Kullanıcıları Derneği'nin 9 yıldır düzenlemekte oldukları etkinlikler bu yıl `Özgür Y...
Kategori:
Toplantı
Kimler Burada? 
Son 1 dakika içinde MMIstanbul' da 53 (50 kayıtlı, 3 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:
MMIstanbul Blog'undan
Blog Bölümü Blogevi.com'a Taşınıyor
Selam arkadaşlar MMIstanbul'da , tasarımcı ve programcıların blog yazılarını "feedleyerek" MMIstanbul okurlarını MMIstanbul dışın ...
7.500'üncü üyemiz Cem Koç!
Neler Yapılabilir?
500 Hatası Hakkında!
Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)









Actionscript 2 de çok sık rastladığım bir sorundu bu. Büyük ihtimal seni de çıldırtmıştır :)
Yaşadığın sorun setInterval in döndürdüğü fonksiyon da, this in setInterval yerleşik metodunu referans almasından kaynaklanıyor. bilyehareket metodunu manuel çağırdığın da "this.bilme_mc" de kullandığın "this", bu kodu yazdığın level i referans alırken, setInterval çağırdığın da ise aynı metod da "this", setInterval i ref. alıyor.
Çözüm için en tepeye metodunu bir objeye referans olarak ata.
Şöyle :
Daha sonra da this.bilye_mc yerine objeni yaz :