2010-12-15 6 views
0

取得中 - TypeError:エラー#1009:nullオブジェクト参照のプロパティまたはメソッドにアクセスできません。 at final_fla :: MainTimeline/frame2()エラー#1009:フラッシュプロジェクト

私のプロジェクトのほとんどは完全に動作しますが、ボタンを押したときに写真を読み込む部分は何もしません。私のコード -

import fl.transitions.Tween; 
import fl.transitions.easing.*; 

stop(); 

function goHome (e:MouseEvent):void{ 
gotoAndStop("Home"); 
} 
home_btn.addEventListener(MouseEvent.CLICK, goHome); 

function goAbout (e:MouseEvent):void{ 
gotoAndStop("About"); 
} 
about_btn.addEventListener(MouseEvent.CLICK, goAbout); 

function goWhat (e:MouseEvent):void{ 
gotoAndStop("What"); 
} 
what_btn.addEventListener(MouseEvent.CLICK, goWhat); 

function goHow (e:MouseEvent):void{ 
gotoAndStop("How"); 
} 
how_btn.addEventListener(MouseEvent.CLICK, goHow); 

function goPricing (e:MouseEvent):void{ 
gotoAndStop("Pricing"); 
} 
price_btn.addEventListener(MouseEvent.CLICK, goPricing); 

function goContact (e:MouseEvent):void{ 
gotoAndStop("Contact"); 
} 
contact_btn.addEventListener(MouseEvent.CLICK, goContact); 



play_btn.addEventListener(MouseEvent.CLICK, goPlay) 

var images = new Array(); 

images[0] = "1.png"; 
images[1] = "2.png"; 
images[2] = "3.png"; 
images[3] = "4.png"; 
images[4] = "5.png"; 

var currentImage:int = 0; 
var myTimer:Timer = new Timer(5000, 0); // 5 seconds 
myTimer.addEventListener(TimerEvent.TIMER, switchPics); 

function goPlay(e:MouseEvent) { 
    myTimer.start(); 
} 

function switchPics(event:TimerEvent):void { 
    currentImage = (currentImage+1)%images.length; 
    loadWindow.source = images[currentImage]; 
    var myTween:Tween = new Tween(loadWindow, "alpha", None.easeOut, 1, 0, 5, true); 
} 
+1

loadWindowとは何ですか?ステージで宣言されていますか? – Mattias

+0

これはUIloaderです。はい、そのインスタンス名でステージにあります。 – Expecto

+0

私の答えが更新されました。スクリプトを開始するフレームにUILoaderが存在することを確認してください。 – Mattias

答えて

2

var images : Array = new Array(); 
    images.push("1.png"); 
    images.push("2.png"); 
    images.push("3.png"); 
    images.push("4.png"); 
    images.push("5.png"); 

を更新しましたが、あなたはUILoaderは、あなたがからスクリプトを開始しているフレーム上に存在することを確認していますか?私はすべてのボタンをテストし、それは正常に動作します。私は、UILoader(loadWindow)は、あなたが現在機能しているフレームに存在しないと思います。switchPics


loadWindowが存在する場合は問題ありません。

私の推測:

  • loadWindowが
  • loadwindowが
  • loadwindowが作​​成されていないと宣言されていない時には、オブジェクトがロードされていない
+0

switchPicsをトリガーするボタンは、loadWindowと同じフレームにあります。それはなぜ私には意味がない、それは動作するはずです! – Expecto

+0

ボタンなしで直接起動するとどうなりますか?単にgoPlay(null)を実行し、何が起こるかを見てください。私のために働く。 – Mattias

+0

ムービーをデバッグすると...どのラインでクラッシュするのですか? – Mattias

0

ソースパラメータ/セッターを受け付けません。 これはで解決することができます。

this.addEventListener(Event.ENTER_FRAME,checkLoaded) 
function checkLoaded(e:Event){ 
    if(mc){ 
     //something 
     this.removeEventListener(Event.ENTER_FRAME,checkLoaded) 
    } 
} 

時々、イベントリスナーが

UPDATE

この問題を解決するために除去しなければならない私は、コードをテストし、私はマティアスが右だと思います。

play_btn.addEventListener(MouseEventの:あなたはでセミコロンが欠落しているように見えますが、インスタンス名loadWindowでUILOADERを入れてフレームに見て、

+0

私のテストhttp://www.sergio-lima.com/test.rar – Sbml

1

をテストするために、プロジェクトのすべてのフレームで、その後入れてみてください.CLICK、goPlay

+0

heh - 悲しいことに、悲しいことに、悲しいことに、同じエラーが発生する – Expecto

+0

play_btnインスタンスは実際にplay_btnと呼ばれていますか?セミコロンがなければ、エラーメッセージの行番号はオフになっている可能性があります... –

関連する問題