[英]External SWF Loading problem
我在包含papervision場景的SWF中加載了SWF。
我之前已經完成了問題,我得到一個錯誤 - 我不確定問題到底是什么。
private function downloadSWF(url:String):void
{
trace(url);
var urlRequest:URLRequest = new URLRequest(url);
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, loaderProgressEventHandler);
loader.load(urlRequest);
}
private function loaderProgressEventHandler(ev:ProgressEvent):void
{
loader.preloaderCircle.percent = ev.bytesLoaded / ev.bytesTotal;
}
當應用程序運行代碼時 - 我收到錯誤:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at com.dehash.pv3d.examples.physics::WowDemo()
如果裝載尚未完成,為什么我會得到這個?
先謝謝你們。
編輯: 嘗試一個空白的孩子swf,看看另一個是否嘗試訪問父母的東西。 - 喬治
我做了這個,看來,即使使用帶有鼠標點擊監聽器的簡單SWF也會導致錯誤:
TypeError: Error #1009: Cannot access a property or method of a null object reference. at simple_fla::MainTimeline/frame1()
我的代碼是:
import flash.events.MouseEvent;
this.stage.addEventListener(MouseEvent.CLICK, onClick);
function onClick(ev:MouseEvent):void
{
trace("MouseClick");
}
我錯過了一些明顯的東西嗎?
問題是加載的swf開始運行而沒有將它添加到舞台上。 因此stage
為null,導致該錯誤。
與addedToStageEventHandler第二個例子工程,因為有stage
后的對象加入到舞台只引用的,所以stage
不是空了。
第一個錯誤的可能解決方案是將加載程序添加到階段。 這樣,當swf加載並啟動時,它已經有一個stage
引用。
如果出現錯誤,它甚至不會加載。 您正在訪問WowDemo()類上的未引用對象...您是否正確地實例化了該類?
這似乎是我的孩子SWF里面工作:
this.addEventListener(Event.ADDED_TO_STAGE, addedToStageEventHandler);
function onClick(ev:MouseEvent):void
{
trace("MouseClick");
var event:Event = new Event("END", true, false);
this.dispatchEvent(event);
}
function addedToStageEventHandler(ev:Event):void
{
this.stage.addEventListener(MouseEvent.CLICK, onClick);
}
有誰知道為什么?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.