2012-12-01 61 views
0

所以我有一個非常基本的類AS3參數錯誤#1063 ...預計1得到0

package { 

    import flash.display.MovieClip; 

    public class XmlLang extends MovieClip { 

     public function XmlLang(num:int) { 
      trace(num); 
     } 
    } 
} 

,並在框架中的一個對象:

var teste:XmlLang = new XmlLang(1); 

我得到這個錯誤:

ArgumentError:錯誤#1063:XmlLang()上的參數計數不匹配。預計1,得到0

我做錯了什麼? 非常感謝您的幫助。

回答

1

有些東西與您的設置有關。我把你的代碼和實現它,它的工作。

這就是我所做的。我創建了AS3新test.fla文件,並把第1幀以下的代碼 - 在舞臺上沒有對象,只是在第1幀

import XmlLang; 

var teste:XmlLang = new XmlLang(1); 
stop(); 

創建一個XmlLang.as文件中的代碼,正是複製你的代碼,將其保存在與test.fla相同的文件夾中。編譯並得到了1

所以我不確定發生了什麼事。你正在運行什麼版本的Flash?

+0

CS6我相信我滑雪進口XmlLang在第一幀... – obinoob

+0

測試並仍然出錯。 :( – obinoob

0

我希望你有一個位於舞臺上的XmlLang實例,它將使用帶有0個參數的構造函數構造,就像普通的MovieClip一樣。要檢查此,構造函數頭改成這樣:

public function XmlLang(num:int = 0) { 

這樣,如果事情會實例化一個XmlLang沒有提供的參數,新的實例將獲得0(默認值)作爲參數。然後您檢查跟蹤輸出,我期待一個或多個零出現,接着是1

+0

在任何情況下都不工作! 正在更新IDE ... – obinoob

+0

Flash正在更新至12.0.2.529版本正在正常工作 非常感謝您的意見。 – obinoob

1

不知道這是否是你的情況,但對於未來的Google:你當你試圖此錯誤消息初始化一個矢量,但然後忘記new關鍵字。

所以這個:

var something:Vector.<Something> = Vector.<Something>(); 

會給你一個錯誤,指出Something發生了爭執數量不匹配。正確的行是:

var something:Vector.<Something> = new Vector.<Something>(); 

難以一目瞭然的錯誤。花了我幾分鐘在我的代碼中找到它,特別是因爲它並沒有真正給你提供錯誤行。

相關問題