Как обрабатывать ошибки
Есть функция которая загружает фотки с юрл, если переменную f задать неверно то сценарий выполнения прерывается. Подскажите как обработать ошибку так чтобы если такого урл не сущесвтует это не приводило к прерыванию всего процесса, а например вставляло стандартную картинку?
Код AS3:
|
Кроме Event.COMPLETE слушайте ещё IOErrorEvent.IO_ERROR
|
всё работает, но пишет ошибку: Error opening URL - эта ошибка не повлияет на работоспособность?
|
если флеша не падает - то не повлияет. :)
|
а метод обработки ошибок try - catch в данном случае лучше не использовать?
|
Цитата:
Синхронные исключения... Ах, давай с начала и по порядку! Начнем, пожалуй. Привет! Нужно сразу же научиться отличать ошибки от исключений (exceptions). Ошибки бывают у всех, даже если ты (вдруг, уже) не женат. Скорее всего сейчас под "ошибкой" ты подразумеваешь исключение (exceptions, еще раз). Теперь, когда ошибки стали для нас исключениями, давай рассмотрим их типы. Исключения бывают двух типов: синхронные и асинхронные. 1. СИНХРОННЫЕ. Синхронные выпадают нам через внутренние механизмы флеша (рантайма, adobe flasplayer(c) или adobe air(c)) или через инструкцию throw. Внутренние механизмы скорее всего обычно выбрасывают исключения типа (подкласса) Error. То есть что мы можем словить в catch(value:Object), где в качестве Object можно указать заинтересованный в "кэтче" тип объекта, который сгенерит throw. Для справки, можно указывать несколько типов для нескольких catch. Для справки EOFError. Код AS3:
Код AS3:
Асинхронные исключения флешом генерируются во время асинхронных операций, а по сути инициируются при помощи диспатча объектов подкласса ErrorEvent (это важно, они такие особенные). Тут нужно упомянуть, что асинхронное исключение ловится только добавлением соответствующего слушателя на литерал ErrorEvent события. там, "внутри рантайма" происходит примерно следующее: Код AS3:
Ваш объект генерит события типа ErrorEvent. Все вспоминаем, что литералом или "типом" (я не зря употребил двойные кавычки, чтобы отличать от типа именно объекта ErrorEvent) события во флеше является строка, например, "complete" в константе flash.events.Event.COMPLETE. Предположим, что таким "типом" события является строка "rampageBro". Итак, наш генерируемый объект выглядит так: Применение Код AS3:
|
а можно это всё упростить до пары предложений, а то как-то почти не въехал х)
|
Ответ дан в псто 2.
|
Без иронии, но моя жизнь разделилась на две части - до прочтения псто 2 и после (must read всем мимо проходящим).
|
Часовой пояс GMT +4, время: 11:02. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.