2012-12-12 59 views
0

嗨,我有2個錯誤,我似乎無法解決。雖然它似乎不應該是太多的問題。錯誤1046和1119

package { 

import flash.display.MovieClip; //line 3 
import flash.events.MouseEvent; 


public class video01 extends MovieClip { 


    public function video01() { 
     // constructor code 
     import flash.events.MouseEvent; 

     trace("movieclip 1 geladen"); 

     btn_terug.addEventListener(MouseEvent.CLICK.terug); //line 16 


    } 


    public function terug(evt:MouseEvent):void { 
    trace("knop ingedrukt"); 

    } 


} 

}

的錯誤是: 3號線1046:類型未找到或不是編譯時常:btn_terug。 第16行1119:通過帶有靜態類型字符串的引用訪問可能未定義的屬性terug。

有什麼想法?


編輯

這是我主要的代碼,它駐留在.fla文件的時間軸上:

import fl.video.*; 
import flash.events.MouseEvent; 
import flash.display.MovieClip; 

stop(); 

btn_1.addEventListener(MouseEvent.CLICK,speel1); 
btn_2.addEventListener(MouseEvent.CLICK,speel2); 
btn_3.addEventListener(MouseEvent.CLICK,speel3); 
btn_4.addEventListener(MouseEvent.CLICK,speel4); 
btn_5.addEventListener(MouseEvent.CLICK,speel5); 
btn_6.addEventListener(MouseEvent.CLICK,speel6); 
btn_7.addEventListener(MouseEvent.CLICK,speel7); 
btn_8.addEventListener(MouseEvent.CLICK,speel8); 
btn_9.addEventListener(MouseEvent.CLICK,speel9); 


var mc_video01:MovieClip = new video01(); 
var mc_video02:MovieClip = new video02(); 
var mc_video03:MovieClip = new video03(); 
var mc_video04:MovieClip = new video04(); 
var mc_video05:MovieClip = new video05(); 
var mc_video06:MovieClip = new video06(); 
var mc_video07:MovieClip = new video07(); 
var mc_video08:MovieClip = new video08(); 
var mc_video09:MovieClip = new video09(); 

var filmAan = false; 

function speel1(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video01); 
    mc_video01.x=340; 
    mc_video01.y=227; 
    mc_video01.width=1360; 
    mc_video01.height=1060; 

    filmAan = true; 
} 
} 
function speel2(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video02); 
    mc_video02.x=340; 
    mc_video02.y=227; 
    mc_video02.width=1360; 
    mc_video02.height=1060; 

    filmAan = true; 
} 
} 
function speel3(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video03); 
    mc_video03.x=340; 
    mc_video03.y=227; 
    mc_video03.width=1360; 
    mc_video03.height=1060; 

    filmAan = true; 
} 
} 
function speel4(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video04); 
    mc_video04.x=340; 
    mc_video04.y=227; 
    mc_video04.width=1360; 
    mc_video04.height=1060; 

    filmAan = true; 
} 
} 
function speel5(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video05); 
    mc_video05.x=340; 
    mc_video05.y=227; 
    mc_video05.width=1360; 
    mc_video05.height=1060; 

    filmAan = true; 
} 
} 
function speel6(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video06); 
    mc_video06.x=340; 
    mc_video06.y=227; 
    mc_video06.width=1360; 
    mc_video06.height=1060; 

    filmAan = true; 
} 
} 
function speel7(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video07); 
    mc_video07.x=340; 
    mc_video07.y=227; 
    mc_video07.width=1360; 
    mc_video07.height=1060; 

    filmAan = true; 
} 
} 
function speel8(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video08); 
    mc_video08.x=340; 
    mc_video08.y=227; 
    mc_video08.width=1360; 
    mc_video08.height=1060; 

    filmAan = true; 
} 
} 
function speel9(evtObj:MouseEvent):void { 
trace("knop 1: video 1"); 
    if (filmAan == false) { 

    addChild(mc_video09); 
    mc_video09.x=340; 
    mc_video09.y=227; 
    mc_video09.width=1360; 
    mc_video09.height=1060; 

    filmAan = true; 
} 
} 

主要頁面有9個按鈕,打開一個影片剪輯與視頻,然後按鈕返回到主頁面。 每個movieclip都有一個名爲video01,video02等的類(如上所示)主要.fla它的類名爲'main'。

主頁上的按鈕可以工作,並且全部打開不同的動畫片段(使用內部按鈕)。我想要做的是讓btn_terug移除孩子。但我在網上收到錯誤1046 3.

希望這澄清了我的問題:)

回答

1

唷,你遍佈在這一個地方,lol..so所有import語句package後生活。 .besides你有兩次import flash.event.MouseEvent。它不應該生活在構造函數代碼中。其次,你的事件監聽器應該是這樣的:

btn_terug.addEventListener(MouseEvent.CLICK, terug);

btn_terug.addEventListener(MouseEvent.CLICK.terug);

package 
{ 
    import flash.display.MovieClip; 
    import flash.events.MouseEvent; 

    public class video01 extends MovieClip 
    { 
     public function video01() 
     { 
      trace("movieclip 1 geladen"); 
      btn_terug.addEventListener(MouseEvent.CLICK, terug); 
     } 

     public function terug(evt:MouseEvent):void 
     { 
      trace("knop ingedrukt"); 
     } 
    } 
} 

見該代碼是現在怎麼漂亮嗎? =)

+0

哈哈我確定做了一堆亂碼:],謝謝你的回覆。儘管如此,我仍然在第3行出現同樣的錯誤:1046:類型未找到或不是編譯時常量:btn_terug。 有什麼建議嗎? Thx幫助 – user1892747

+0

這是您的文檔類嗎?你如何實例化這個類? – Ronnie

+0

文檔類是'主'AS文件,我是對嗎?我已將主代碼放在.fla中的時間軸上,而不是分離的.as文件中。生病編輯我的問題,並在那裏放些更多的細節。對不起,你到底意味着什麼:'你怎樣實例化這個類?' – user1892747