Руководство по actionscript. часть 2, стр. 040
В листинге 12.2 демонстрируется новый код, который обрабатывает события IOErrorEvent. IO_ERROR, в контексте класса FileLoader.
Листинг 12.2. Регистрация приемника для событий IOErrorEvent. IO_ERROR
package { import flash. display.*; import flash. net.*; import flash. events.*;
public class FileLoader extends Sprite { public function FileLoader ( ) { var url Loader-.URLLoader = new URLLoader( ); urlLoader. addEventLi stener(Event. COMPLETE, completeLi stener); urlLoader. addEventLi stener(IOErrorEvent. I0_ERR0R, i oErrorLi stener); urlLoader.1oad(new URLRequest(«someFi1e. txt»));
}
private function completeListener (e:Event):void { traceC’Load complete»);
}
private function ioErrorListener (e:Event):void { traceC’Error loading file.»);
>
}
}
Теперь попытаемся обработать совершенно другое предопределенное событие Event. RESIZE клиентской среды выполнения Flash. Диспетчеризация события Event. RESIZE осуществляется всякий раз, когда среда выполнения Flash находится в режиме «без масштабирования» (no-scale) и изменяется ширина или высота окна приложения. Получателем событий Event. RESIZE является экземпляр класса Stage клиентской среды Flash. Для обращения к этому экземпляру мы воспользуемся переменной stage нашего основного класса приложения ResizeMonitor. Если вы еще незнакомы с экземпляром класса Stage, пока просто считайте, что он представляет область отображения клиентской среды выполнения Flash. Более подробно класс Stage будет рассмотрен в гл. 20.
Вот этот код:
package { import flash. display.*; import flash. net.*; import flash. events.*;
public class ResizeMonitor extends Sprite { public function ResizeMonitor ( ) { // Используем режим «без масштабирования». В противном случае при // изменении размеров окна приложения происходит автоматическое // масштабирование содержимого и события Event. RESIZE не возникают, stage. sealeMode = StageSca1eMode. N0_SCALE; // Регистрируем resizel_istener( ) в экземпляре Stage на события // Event. RESIZE.