İçeriğin rss beslemesi kullanımda değil Soru - Cevap Bölümü / Kategori: 3D

26/04/2010 - 19:44:19 cevap (1) Okunma : 385 Bu yazıyı 0 kişi tuttu.

setInterval

etiketler : 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
adres DUNKELHEIT profilini göster
Erdal Taşdemir 02.04.2009 00:48:13
En iyi cevap mı ?

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 :


var bilyeMc:MovieClip = this.bilye_mc

Daha sonra da this.bilye_mc yerine objeni yaz :


bilyeMc._y = pozisyon

aç-kapa Bu Yazıyı Tutanlar

bu yazıyı tutan kimse yok.

yeni üyelik | şifremi unuttum

üyeler Son Kahramanlar...

stats Kimler Burada? web stats

Son 1 dakika içinde MMIstanbul' da 56 (50 kayıtlı, 6 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:

volkan08 ...

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)

coldfusion mysql ubuntu
 
sponsor adobe istanbul