Я использую ActionScript 3 во Flash Professional и хотел бы, чтобы мой класс вызывал событие, а не пользовательское событие, а существующее. Я настроил свой класс так, чтобы он расширял EventDispatcher. В документации http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/EventDispatcher.html пример объявляет пользовательское событие, добавляя статическую переменную String:
class CustomDispatcher extends EventDispatcher {</p>
<pre><code> public static var ACTION:String = "action";
Я предполагаю, что это позволяет:
dispatcher.addEventListener(CustomDispatcher.ACTION, actionHandler);</p>
<p>
или, по крайней мере, автозаполнение, когда вы ввели "dispatcher.addEventListener (" в IDE Flash Professional.
Но многие классы, которые вызывают события, порождают смесь существующих нестандартных событий. Например, если у вас есть экземпляр flash.netFileReference и введите
fileRef.addEventListener(</p>
<p>
предоставляется длинный список потенциальных событий для прослушивания, включая DataEvent.UPLOAD_COMPLETE_DATA, Event.SELECT, HTTPStatusEvent.HTTP_STATUS, SecurityErrorEvent.SECURITY_ERROR и т. Д.
Если я хочу, чтобы мой класс был зарегистрирован, чтобы поднять эти существующие события, какой код мне нужен? Желательно, чтобы среда IDE знала, что экземпляры моего класса могут вызывать событие и предлагает их в списке автозаполнения / intellisense addEventListener.