Soru - Cevap Bölümü
/ Kategori: Programlama
02/07/2008 - 02:24:17 cevap (4) Okunma : 505 Bu yazıyı 2 kişi tuttu.
ActionScript 3 public değişken
Selamlar
AS3 ile bir TXT okuyan sınıf yazıyorum. Sınıftan timeline’a okuduğum veriyi gönderemiyorum..
Şöyleki
—- [ Read.as ] —-
package
{
public class Read
{
public var veri:String
public function Read()
{
var r:URLRequest=new URLRequest('buffer.txt');
var loader:URLLoader=new URLLoader();
loader.addEventListener(Event.COMPLETE,LoaderOK)
try
{
loader.load(r);
}
catch (error:Error)
{
trace('Hata');
}
}
public function LoaderOK(e:Event):void
{
var loader:URLLoader=URLLoader(e.target)
veri = loader.data
}
}
}
—- [ Read.as ] —-
Timeline dan
var oku:Read = new Read()
trace(oku.veri)
şeklinde çağırdımda "null" şeklinde dönderiyor. Fakat read.as dosyasından
public function LoaderOK(e:Event):void
{
var loader:URLLoader=URLLoader(e.target)
veri = loader.data
trace(veri)
}
dediğimde çalışıyor.
Nasıl bir yöntemle veriyi timeline’a taşıyabilirim ?
Cevaplar
( Faydalı Cevapları Göster )
Teşekkürler yağız, bu şekilde çalışıyor..
Başka bir yöntem ise event oluşturmaktır. Buda iyi bir çözümdür aslında:
package {
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
public class Read {
public var veri:String;
public var onLoaded:Function
public function Read() {
onLoaded=onLoaded_
var r:URLRequest=new URLRequest('buffer.txt');
var loader:URLLoader=new URLLoader ;
loader.addEventListener(Event.COMPLETE,LoaderOK);
try {
loader.load(r);
} catch (error:Error) {
trace('Hata');
}
}
public function LoaderOK(e:Event):void {
var loader:URLLoader=URLLoader(e.target);
veri=loader.data;
this.dispatchEvent(new Event("Yuklendi"));
}
}
}
Framede kullanılacak kod:
var oku:Read=new Read();
oku.addEventListener("Yuklendi",bitti);
function bitti(e:Event):void{
trace(oku.veri);
}
her iki yöntem de güzel, teşekkürler
Etkinlikler
Yarışma
5.İstanbul Animasyon ve Görsel Efekt Kısa Film Yarışması
5.İstanbul Animasyon ve Görsel Efekt Kısa Film Yarışması
5.İstanbul Uluslararası Animasyon Festivali, 24-30 Kasım 2008 tarihleri arasında gerçekleştirilecektir. Festival dahilinde gerçekleşen 5. İstanbul Ani...
Kategori:
Yarışma
Kimler Burada? 
Son 1 dakika içinde MMIstanbul' da 766 (0 kayıtlı, 766 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:
MMIstanbul Blog'undan
Neler Yapılabilir?
Yeni bir portal, 30 civarında online / offline etkinlik, seminer vb rağmen MMIstanbul sanıyoruz ki halen hakettiği ilgiyi göremedi. " ...
500 Hatası Hakkında!
Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)
Ne Nedir Kampanyası Başlıyor!
Çok Merak Edenler için; MMIstanbul Geliştirme Ekibi ve Çalışma Ortamımız









Faydalı cevap
null dönmesinin nedeni TXT dosyası yüklenmeden veriyi alman. Bu durumda veriyi TXT dosyası yüklendikten sonra alman lazım. Yani işin içine tetikleyici giriyor.
Ben basitçe senin sınıfını düzenledim:
Nasıl kullanıcaksın? Sınıfı oluştururken artık bir parametre var. Bu parametreye Flash içindeki fonksiyonu yazıcaksın.
Örnek Flash kodu:
Böylece sınıf TXT dosyasını yüklediğinde senin belirttiğin fonksiyonu çağıracak. Sen de rahatça veriyi alabileceksin.
Kolay gelsin…