Я пытаюсь переопределить dispatchEvent (), но безуспешно во Flash IDE.Проверяя Adobe docs на методе, он должен быть просто:
override function name()
Как продемонстрировал Грант Скиннер , это обычно и легко выполняется:
override public function dispatchEvent(evt:Event):Boolean {
// code here
}
И хотя тщательный поиск в Google будет повторять этот синтаксис, успешно используемый в файлах классов, это делается внутри кода временной шкалы, однако встроенная в Flash IDE невозможна.Первая проблема заключается в том, что при использовании public
выдается ошибка 1114: The public attribute can only be used inside a package.
Это было очевидно, однако после удаления этого выполнялось следующее (в первом кадре нового файла .fla):
override function dispatchEvent(evt:Event):Boolean {
trace(evt.type);
return super.dispatchEvent(evt);
}
приводит к этой ошибке: 1024: Overriding a function that is not marked for override.
Документация по этой ошибке подразумевает, что мне не удалось поставить префикс функции с таким же именем в операторе override
, но, очевидно,это заблуждение, и я остаюсь потрясенным в отношении того, какое может быть решение.
Чтобы было ясно, мы знаем, что файл класса будет работать, но это неуместная проблема.Как заставить override function dispatchEvent()
работать в коде временной шкалы?