0

以下は私のコンストラクタークラスですが、オブジェクトをインスタンス化するときに引数を追加しようとすると、デフォルトのコンストラクターがないというエラーが表示されます。基本的にオブジェクトに文字列を渡したいのですが、すべてのオブジェクトが文字列を取得するわけではありません。

    public function Shortcuts(opencontent:String){
        highlight = new shortcuthighlight();


        highlight.x = highlight.x - highlight.width/2;
        highlight.y = highlight.y - highlight.height/2;
        highlight.visible = false;
        addChild(highlight);
        setChildIndex(highlight,0);

        this.addEventListener(MouseEvent.ROLL_OVER, addHighlight);
        this.addEventListener(MouseEvent.ROLL_OUT, removeHighlight);

        this.addEventListener(MouseEvent.MOUSE_DOWN, dragOn);
        this.addEventListener(MouseEvent.MOUSE_UP, dragOff);





    }

これが私のオブジェクトの作成方法です。

for(var i=0; i<shortcutsArray.length;i++){
        var className:Class = getDefinitionByName(shortcutsArray[i][0]) as Class;
        var object:Object = new className('hey');
        var mc:MovieClip = MovieClip(object);
        mc.x = shortcutsArray[i][1];
        mc.y= shortcutsArray[i][2];
        addChild(mc);


    }
4

1 に答える 1

2

オプションにしたい場合opencontentは、デフォルトのパラメータを設定できます。

public function Shortcuts(opencontent:String=null)
{
    /* ... */
}
于 2012-05-25T21:08:29.427 に答える