![]() |
Загрузка JPG с прелоадером.
Перечитал все уже по поводу загрузки картинок с сервера.
И про прелоадеры прочитал. - это чтобы тему не удалили... :) А вот как сделать так, чтобы при нажатии на кнопку в определенном месте моего ролика подгружалась из вне картинка (JPG), + в текстовом поле "percent" отображались проценты загрузки этой картинки, не понял. Подскажите пожалуйста! P.S. Я, честно говоря, в AS плохо разбираюсь, буду очень благодарен, если исходник выложите. P.P.S. И за кусок кода большое спасибо скажу! |
вот тут есть описание, вроде несложное...
http://noregret.org/tutor/resize/ не совсем то, что тебе нужно, но все основные элементы там описаны. тебе нужно модифицированть функцию, определяющую, что картинка загрузилась - добавить вывод процентов в текстовое поле. Цитата:
если так, то варианта два: 1. ты ничего не читал, или читал заголовок, а дальше стало лень. 2. не хватило интеллекта, чтобы понять. :( прошу прощения, но я других вариантов не вижу. |
http://noregret.org/tutor/resize/
Спасибо. Буду сейчас пробовать. Только плохо, что на http://noregret.org/ исходники в 8-м Флэше. Просто у меня 7. :( ЧИТАЛ!!! скорее тогда пункт 2. :) |
Цитата:
на будущее - если ты хочешь, чтобы тебе быстро помогли на форуме, то сам покопайся, сделай большую часть работы, и спрашивай, если понадобится, только что-то более конретное а не в общем "как это сделать? сделайте всё за меня!". просто практика показывает, что народ очень плохо на такие вопросы реагирует. :) Цитата:
теперь он должен открываться и в седьмом флэше. |
Прочитал, то что надо, без ресайза.
Вроде уже лучше. НО! Там не определяется количество процентов, чтобы я их в текстовое поле занес. Вот что я по этому поводу нашел: _____________________ Код прелодера: 1 фрейм: Код: bl = getBytesLoaded(); bt = getBytesTotal(); persent = Math.round(bl*100/bt); tpers.text = "Загрузка ролика: " + persent+" %"; Второй фрейм: Код: if (persent<100) { gotoAndPlay(1) } else { gotoAndPlay(3); } _____________________ Так вот меня немного смущает тот факт, что несколько фреймов тут. Можно все в одном сделать? Объясните пожалуйста, что надо сделать... |
Цитата:
вот, смотри, по этой ссылке: http://noregret.org/tutor/resize/#2 есть такое: Код:
clip.onEnterFrame = function()первая строчка - это запись в переменную l количества загрузившихся байт. вторая строчка - это запись в переменную t общего количества байт картинки. вопрос: что такое проценты? это доля загрузившейся части от целого выраженная в пределах от 0 до 100. составляем отношение: l/t - это покажет нам какая часть от целого загрузилась. чтобы получились проценты - нужно умножить на 100. итого, проценты: percent = l/t*100; с выводом в текстовое поле справишься? |
Сделал так - отображается только когда 100%, то есть нет:
1%, 2%, 3%,.. 100%. А сразу 100%. persent = Math.round(bl*100/bt); tpers.text = "Загрузка ролика: " + persent+" %"; КАК? несправился... :( P.S. Я уже расстраиваться начинаю... P.P.S.Сразу вопрос по другой теме можно, или надо новую создать? |
И еще, можно тебя по асе потиранить? Есть несколько моментов, которые хотелось бы решить...
Хоть направил бы меня на путь истинный... :) |
Цитата:
2. в меню View > Download Settings выставь тестовую скорость похуже, например 14.4 3. нажми еще раз Ctrl + Enter это включит имитацию загрузки ролика из инета. просто пока ты тестишь со своей машины - ты и не увидишь процесса загрузки, потому что с локальной машины файл ЛЮБОГО размера загружается за время ОДНОГО кадра. или, ты можешь выложить ролик в инет и проверить уже оттуда. Цитата:
пункт #4 |
Большое спасибо за исходник!!! Почему бы все исходники на 7-м не сделать? Думаю у большинства пользователей все-таки 7-ой стоит...
А на счет отладочного режима: Ctrl+Enter - ну я же не совмем тормоз!!! Делал я это все + устанавливал скорость 0,1 Кб/с - все равно показывается сначала 0%, потом пауза, потом 100%. Не понимаю как это сделать, да и центровка что-то не сработала... Мне вообще не надо ресайзить - просто выводить бы картинку по центру клипа clip. И все. Ну и текстовое поле с % бегущими... Помоги, пожалуйста, по-моему теперь очень конкретно! |
Цитата:
вообще-то тогда должна идти загрузка "как настоящая"... |
Так что делать с загрузкой? Проценты не показываются...
|
покажи, как ты составил код.
|
:-D Чуть не лопнул!!! Все-таки я тормоз!!!
Спасибо!!! Все работает! Только одно еще осталось! Щас перерыл кучу материала по запросу: "координаты центра" - подскажешь? Чтобы картинка выводилась точно по центру мувика, в котором она выводится - в том примере на noregret.org, в клипе clip, чтобы по центру клипа clip выводился центр картинки. КАК? |
Цитата:
просто подумай, ЧТО ИМЕННО ты хочешь получить - и ты сам найдешь решение :) загружаемая картинка появляется левым верхним углом к центру clip. значит, чтобы она встала на эту точку своим центром, нужно ПОСЛЕ окончания загрузки сдвинуть её вверх на половину высоты и влево на половину ширины. функция, которая отслеживает окончание загрузки у тебя уже есть. тебе нужно в неё добавить только одно действие: Код:
if (t>0 && l>=t) { |
ОГРОМНОЕ!!! СПАСИБО!
Только вот Math.round при этом не нужен? > Это нужно для того, чтобы пиксели картинки не смазывались (если расположить картинку по нецелым координатам, будет действовать сглаживание) Не надо, или так лучше может?: if (t>0 && l>=t) { // загрузка закончилась delete this.onEnterFrame; this.image._x -= Math.round(this.image._width/2); this.image._y -= Math.round(this.image._height/2); } |
Цитата:
|
Думаю нужен!
Все, тема закрыта! Спасибо тебе Nox Noctis, большое! P.S. Прощаюсь не на долго, вероятно... Сейчас перечитаю все что мне надо, если не найду ответы на свои вопросы - создам тему! |
| Часовой пояс GMT +4, время: 21:43. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.