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 回答