2014-07-07 28 views
0

包中的類 { image_class.as,12號線t 1026:構造函數必須是實例方法

import flash.display.Sprite; 
import Classes.Image_SS; 
import flash.events.Event; 

public class image_class extends Sprite 
{ 
    public static var ss:Image_SS = new Image_SS("3D_solid_surface_1",2); 

    static public function image_class() 
    { 
     addChild(ss); 
     ss.alpha = 0; 
     ss.x = -2000; 
     var tw1:my_Tween = new my_Tween(ss,"x",0,1,"Out"); 
     var tw2:my_Tween = new my_Tween(ss,"alpha",1,1,"Out"); 
    } 
    static public function remove():void 
    { 
     removeChild(ss); 
     /* 
     var tw3:my_Tween = new my_Tween(ss,"x",2000,1,"In"); 
     var tw4:my_Tween = new my_Tween(ss,"alpha",0,1,"In"); 
     tw3.addEventListener(Event.COMPLETE, onCOM); 
     function onCOM(e:Event):void 
     { 
      ss.alpha = 0; 
      ss.x = -2000;    
     } 
     */ 
    } 
} 

} 我不知道爲什麼它不工作。 請有人告訴我這裏有什麼問題,這個問題的含義是什麼 在我忘記了我把這個功能改成了公共的之前,它沒有改變任何東西。

+0

並沒有什麼用相同的名字在我的FLA庫。如果我刪除removeChild,一切都很好。但我真的需要它。 –

回答

1

刪除靜態到..(雖然未經測試,只是根據您發佈的代碼)對我的評論擴大

//package Classes 
package 
{ 

import flash.display.Sprite; 
import flash.events.*; //covers all events used in this code (inc mouse events) 
import Classes.Image_SS; 

public class image_class extends Sprite 
{ 
    public var ss:Image_SS = new Image_SS ("3D_solid_surface_1",2); 

    public function image_class() 
    { 
     addChild(ss); 

     //remove(); //do remove without mouse 
     ss.addEventListener(MouseEvent.CLICK, remove); //for remove via mouse 

     ss.alpha = 0; 
     ss.x = -2000; 
     var tw1:my_Tween = new my_Tween(ss,"x",0,1,"Out"); 
     var tw2:my_Tween = new my_Tween(ss,"alpha",1,1,"Out"); 
    } 

    //public function remove():void //do without mouse click 
    public function remove(event:MouseEvent):void //do via mouse click event 
    { 
     removeChild(ss); 
     /* 
     var tw3:my_Tween = new my_Tween(ss,"x",2000,1,"In"); 
     var tw4:my_Tween = new my_Tween(ss,"alpha",0,1,"In"); 
     tw3.addEventListener(Event.COMPLETE, onCOM); 
     function onCOM(e:Event):void 
     { 
      ss.alpha = 0; 
      ss.x = -2000;    
     } 
     */ 
    } 
} 

} //close or end package 
2

構造函數(image_class)不能是靜態方法。從聲明

+0

好吧,現在我有另一個erorr:調用一個可能的未定義的方法removeChild在第22行 –

+0

你調用removeChild從靜態方法,這是一個類方法,而不是一個實例方法。一個類不是一個Sprite,並且沒有removeChild方法。如果您要刪除靜態關鍵字(從而使該方法成爲實例方法),那麼removeChild將對類實例起作用。 – BotMaster

+0

我想刪除的類是一個精靈,但在我聽起來像我不能把removeChild放在一個靜態函數。那麼我怎麼能告訴班級在用戶點擊它時自行移除呢? –

相關問題