Я пытаюсь вызвать пользовательский компонент, но он постоянно говорит мне следующее:
TypeError: Error #1007: Instantiation attempted on a non-constructor.
at flexlib.containers::WindowShade/createOrReplaceHeaderButton()[C:\Users\user\Adobe Flash Builder 4\flexlib\src\flexlib\containers\WindowShade.as:205]
at flexlib.containers::WindowShade/createChildren()[C:\Users\user\Adobe Flash Builder 4\flexlib\src\flexlib\containers\WindowShade.as:320]
и вот компонент, который я вызываю, который постоянно выдает мне ошибку:
<flcont:WindowShade>
<!-- this gives an error -->
</flcont:WindowShade>
А вот методы из вышеприведенной ошибки:
protected function createOrReplaceHeaderButton():void {
if(_headerButton) {
_headerButton.removeEventListener(MouseEvent.CLICK, headerButton_clickHandler);
if(rawChildren.contains(_headerButton)) {
rawChildren.removeChild(_headerButton);
}
}
if(_headerRenderer) {
_headerButton = _headerRenderer.newInstance() as Button;
}
else {
var headerClass:Class = getStyle("headerClass");
_headerButton = new headerClass();//error here
}
applyHeaderButtonStyles(_headerButton);
_headerButton.addEventListener(MouseEvent.CLICK, headerButton_clickHandler);
rawChildren.addChild(_headerButton);
}
override protected function createChildren():void {
super.createChildren();
createOrReplaceHeaderButton();
}