17 Kasım 2009 Salı

Openlaszlo as3 compilation error : "ReferenceError: Error #1056: Cannot create property..."

1-2 gündür çözümünü bulmaya çalıştığım hatayı, swf8 için hatasız derlenen ancak swf9 ve swf10'da kod için alıyordum. Örneğin swf8 için
this.so.send("writeMessage","aaa"); çağırıp

this.so.writeMessage= function (msg) {
Debug.debug(msg);
}

şeklindeki bir fonksiyonu dinamik olarak yükleyebiliyorduk uygulamamıza. Ancak swf9 için shared object'te değişiklik yapmak istiyorsak, shared object sınıfına ait bir instance'ı dinamik olarak oluşturmalıyız ve çağıracağımız writeMessage fonksiyonunu da public method şeklinde yazmamız gerekiyor.

Yapmamız gereken :

1-) this.so.client=this; (burada this, örneğini oluşturacağımız sınıf oluyor)

2-) sfw8 için dynamik olarak oluşturduğumuz metodu sınıfımıza da method name="writeMessage" args="msg"> şeklinde eklemek

Hiç yorum yok: