![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2010
Сообщений: 5
|
В общем во флешу грузятся картинки. По нажатию на кнопку грузится вторая и т.д. Как отменить, прервать загрузку предыдущей.
А то получается если первая ещё не загрузилась до конца, то она продолжает грузиться хотя уже началась загрузка второй. Искал, нашёл close(), но почему-то работать не хочет. Может чего не хватает. В общем нужно узнать, грузится ли в данный момент файл, и если да то остановить его загрузку и начать загрузку другого файла, ну ил просто прервать загрузку код приблизительно такой var i=0; function loadIMG(i) { var loader:Loader = new Loader(); var urlRequest:URLRequest=new URLRequest("0"+i+".jpg"); loader.load(urlRequest); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoaded_PROGRESS); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded); function imageLoaded_PROGRESS(e:ProgressEvent):void { trace(e.target.bytesLoaded+" / "+e.target.bytesTotal); } function imageLoaded(e:Event):void { addChild(loader); } btn.addEventListener(MouseEvent.CLICK, stopLoad); function stopLoad(event:MouseEvent):void { try { loader.close(); trace("шла какая-то загрузка"); } catch (error:Error) { trace("нет загрузки"); } i++; loadIMG(i); } } loadIMG(0); |
|
|||||
|
Регистрация: Nov 2008
Адрес: Атланта
Сообщений: 1,271
|
я думаю что чтоб сделать отмену загрузки, сначала почитай про класс URLLoader
__________________
Пока я жив, Вы горем обеспечены |
|
|||||
|
Регистрация: May 2010
Сообщений: 5
|
А при чём тут класс URLLoader. Он же вроде для текста, и для загрузки картинок не подходит.
|
|
|||||
|
Квач
Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
|
2 ninth:
А как вы определили, что close не работает? А URLLoader не для текста. Точнее, далеко не только для него. Цитата:
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого |
|
|||||
|
Регистрация: May 2010
Сообщений: 5
|
Цитата:
И Ваша фцитата, на русском Цитата:
Ну вот примерно выше приведённое вычитал и решил, что для загрузки JPG лучше использовать Loader А определил просто что close() не срабатывает в режиме Simulate Download. (Хотя млин может я что-то неправильно делаю, скорей всего )что, не уж-то никто не сталкивался с подобным, хоть примерчик, один, как остановить загрузку не файла, а именно картинки Чёт даже простой пример нифига не работает. Может в режиме Simulate Download немного по другому? попробовал так: //новый лоадер var lod:Loader = new Loader(); //урл lod.load(new URLRequest("01.jpg")); //прогресс lod.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoaded_PROGRESS); //по завершению загрузки lod.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded); //отслеживание прогресса function imageLoaded_PROGRESS(event:ProgressEvent):void { trace(event.target.bytesLoaded+" / "+event.target.bytesTotal); } //по завершению загрузки, как только так сразу :) function imageLoaded(event:Event):void { //только если всё загруженно добавлям (хотя пофиг) if (event.target.bytesLoaded==event.target.bytesTotal) { trace("загрузилось"); addChild(lod); } else { trace("не загрузилось и не надо"); } } //останоака загрузки btn.addEventListener(MouseEvent.CLICK, stopLoad); function stopLoad(event:MouseEvent):void { try { //и тут типо должна остановиться загрузка :( lod.close(); trace("шла какая-то загрузка"); } catch (error:Error) { trace("нет загрузки"); } } //новый лоадер var lod:Loader = new Loader(); //добавляем addChild(lod); //урл lod.load(new URLRequest("01.jpg")); //Удаляет дочерний объект этого объекта Loader, загруженный с помощью метода load(). //Параметр property связанного объекта LoaderInfo сброшен до значения null. //Дочерний объект не обязательно удаляется, так как на него могут ссылаться другие объекты. //Однако он больше не является дочерним для объекта Loader. //попробуем lod.loaderInfo.addEventListener(Event.UNLOAD, lodUnload); //прогресс lod.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoaded_PROGRESS); //по завершению загрузки lod.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded); //отслеживание прогресса function imageLoaded_PROGRESS(event:ProgressEvent):void { trace(event.target.bytesLoaded+" / "+event.target.bytesTotal); } //по завершению загрузки, как только так сразу :) function imageLoaded(event:Event):void { trace("загрузилось"); } //останавливаем загрузку function lodUnload(evt:Event) { lod.close(); } //останоака загрузки btn.addEventListener(MouseEvent.CLICK, stopLoad); function stopLoad(event:MouseEvent):void { lod.unload(); } Последний раз редактировалось ninth; 19.06.2010 в 03:13. |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:07. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|