Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел. |
![]() |
||
![]() |
Что касается web-а... WebMaster-а Воронежа - объединяйтесь! |
![]() |
|
Опции темы
![]() |
![]() |
#1 |
Форумец
Сообщений: 37
Регистрация: 12.04.2004
![]() |
![]()
Помогите, пожалуйста !!!
Подскажите, как во Flash MX сделать случайный выбор картинок, чтобы при каждой загрузке Flash-ролика у меня появлялась бы новая картинка. Заранее благодарна. Дарья. |
![]() |
![]() |
![]() |
#2 |
*
Сообщений: 984
Регистрация: 02.06.2002
Возраст: 24
![]() |
Daria создай мувик с количеством кадров равным количеству твоих картинок, в каждом кадре по картинке.
Потом, создай кей_фрем в другом слое, и на него повесь ifFrameIsLoaded { _root.muvik.gotoAndplay(random(10)) } Где 10- это количество кадров в твоем мувике с картинками, а "muvik" это его имя. или типа того, но мысль я думаю понятна. |
![]() |
![]() |
![]() |
#3 |
чистый телом
Сообщений: 262
Регистрация: 17.12.2003
Возраст: 42
![]() |
Daria
Идея ACIDovsky только не обязательно мувик делать можно все и к корне ролика положить... и еще в каждом кадре картинке поставить stop(); а для перехода на нужную картинку сразу после прилоадера (или можно в прелоадер) n = int(Math.random()*КоличествоКартинок)+НомерКадраПе рвойКартинки; _root.gotoAndPlay(n); |
![]() |
![]() |
![]() |
#4 |
Archer forever
Сообщений: 1,087
Регистрация: 13.03.2002
Возраст: 48
![]() |
Народ! Вы что совсем, совсем флэш не знаете?! Закачать все картинки (и это в MX то) и показывать только одну!!! Да еще бэкграундные картинки!!!
Картинку надо выбирать серверно, ну на крайняк во флэш загнать массив имен файлов картинок и случаным образом выбирать один эллемент и потом уже качать одну единственную в ролик... Daria - дерни нашего нынешнего самого модного флэшера. Как его там? Ну который недавно рекламировался и здесь и в вакансиях. Пусть объяснит. Ну если и он не бум-бум, или не захочет возится, обращайся ко мне, я распишу скрипты. Но у меня сейчас со временем опаньки. Random добавил [date]1081953204[/date]: И flasher, решение ACIDovsky, если уж на то пошло более правильное, со всех точек зрения. ЗЫ Блин, народ, вы меня растроили, сорри если оказался резок ![]() |
![]() |
![]() |
![]() |
#5 |
Форумец
Сообщений: 18
Регистрация: 22.02.2004
![]() |
Random ну спасибо .. меня Артём зовут.. если конечно про меня речь - если нет , то сори...
Daria Random прав , варианта 2 : 1--есть ПХП на хостинге : Пишим скрипт на ПХП ################СКРИПТ################### <? //Создаём массив картинок имён, допустим 10 штук от 1.jpg до 10.jpg $img=array("1.jpg","2.jpg","2.jpg","4.jpg","5.jpg" ,"6.jpg","7.jpg","8.jpg","9.jpg","10.jpg"); //Раскручиваем генератор случайного числа srand((double)microtime()*1000000); //Устанавливаем имя файла картинки случайным образом $filename = $img[round(rand(0,sizeof($img)))]; //Открываем файл для чтения $handle = fopen($filename,"r"); //В переменную $contents читаем все содержимое файла в бинарном виде $contents = fread ($handle, filesize ($filename)); //Говорим браузеру тип данных, которые собираемся передавать header("Content-type: image/jpeg"); //Пихаем все это в браузер, а точнее во флешу print $contents; //Закрываем файл fclose($handle); ?> #############КОНЕЦ СКРИПТ################## Кладём этот скрипт на сервер назвав его допусим img.php , туда же флешу в кторой создаём мувик (!!! с выравниванием по левому верхнему углу -ВАЖНО!!!) - допустим мувик move Туда откуда нужно вызвать загрузку картинки пишем _root.move.loadMovie("img.php"); Вуаля ! Ещё альтернатива, можно применить другой скрипт ПХП : ############СКРИПТ 2#################### <? //Создаём массив картинок имён, допустим 10 штук от 1.jpg до 10.jpg $img=array("1.jpg","2.jpg","2.jpg","4.jpg","5.jpg" ,"6.jpg","7.jpg","8.jpg","9.jpg","10.jpg"); //Раскручиваем генератор случайного числа srand((double)microtime()*1000000); //Устанавливаем имя файла картинки случайным образом $filename = $img[round(rand(0,sizeof($img)))]; //пинаем браузер на эту картинку header("Location: $filename"); ?> ################КОНЕЦ СКРИПТ 2############### Всё остальное то же самое как и для первого скрипта. 1--НЕТ ПХП на хостинге ![]() На сайт кладём текстовый файлик с именами картинок : ########файл с именами###################### u1=1.jpg&u2=2.jpg&u3=3.jpg&u4=4.jpg&u5=5.jpg&u6=6. jpg&u7=7.jpg&u8=8.jpg&u9=9.jpg&u10=10.jpg ############файл с именами коннец############## Можно конечно список имён во флешь зашить , но так удобнее если картинки менять надо будет иногда , или их количество.. Кладём этот файл на сервер назвав его допусим img.txt , туда же флешу в кторой создаём мувик (!!! с выравниванием по левому верхнему углу -ВАЖНО!!!) - допустим мувик move Туда откуда нужно вызвать загрузку картинки пишем _root.move.loadVariables("img.txt"); _root.move.onData = function(){ i=u1; n=1; while (length(i)<2){n++; i=eval("u" add n+1);} _root.move.loadMovie(eval("u" add Math.round(Math.random()*n))); } Вуаля ! P.S. Если что намудрил, не пинать ! Не пробовал , писал не внимательно , но истина гдето крайне рядом ! Что непонятно стучитесь в аску номер есть в профайле... |
![]() |
![]() |
![]() |
#6 |
*
Сообщений: 984
Регистрация: 02.06.2002
Возраст: 24
![]() |
art се это имеет смысл только если размер картинок БОЛЬШОЙ. в остальных случаях нафик надо?
И читать файл в бинарном виде и передавать во флешку, это помоему ты реально НАМУДРИЛ. Помоему лучше именем обойтись... Тоже повые**сь: 1) Создаем текстовый файл с именами картинок, в каждой строке этого файла по одному именни. 2) читаем файл построчно в массив 3)Случайным образом выбираем номер элемента массива. 4)Передаем выбранную строку с именем файла во влеш. 5)Вуа ля! плюсы: 1)легко менять кол-во и имена файлов, котороые МОЖНО отображать (фселишьтекст.файл отредоктировать) 2)Обработка ТАКОГО скритпа намного быстрее чем с побитовым считыванием jpg. с чуством выполненого долга нажимаю кнопку "Ответить". |
![]() |
![]() |
![]() |
#7 |
Archer forever
Сообщений: 1,087
Регистрация: 13.03.2002
Возраст: 48
![]() |
ACIDovsky - в твоем варианте флаш делает два запроса: первый на имя файла, второй на сам файл. Плюс куча возможностей не опытному человеку получит вполне определенные траблы с кешем для первого запроса. И кстати, у нас файлы текстовые кешируются по умолчанию или нет?
art речь шла о тебе ![]() |
![]() |
![]() |
![]() |
#9 |
Форумец
Сообщений: 18
Регистрация: 22.02.2004
![]() |
Random ну вопрос приоритетов спорный
![]() Не совсем понял что ты имел в виду, ну возможно при выводе в пхп надо будет вставит в заголовок запрет кеширования ... а так вроде должно работать ... ACIDovsky Намудрил конечно ! Но прикольная идейка ... А твой вариант то же самое что и мой 2 тока мой без использования ПХП , так гораздо удобнее т.к. флеша прекрастно справляеца с выбором случайным картинок... зачем усложнять то ? |
![]() |
![]() |
![]() |
#10 |
*
Сообщений: 984
Регистрация: 02.06.2002
Возраст: 24
![]() |
All помоему мы Дарью напугали нафик.
Зашла она почита что тут понаписано и решила что флеш это не для неё... И всем собственно пофик про что тема, лижбы яйцами померяться (и мне в том числе). Вот осознал я это и как-то грусно стало... |
![]() |
![]() |
![]() |
#11 |
Archer forever
Сообщений: 1,087
Регистрация: 13.03.2002
Возраст: 48
![]() |
ACIDovsky - во мысли сходятся. По отношении к Дарье, твой самый первый ответ и был самым правильным. Если указать минусы даного подхода, то он был бы просто идеальным. А вот если бы она спросила как обойти минусы, вот тогда вперед, на мины! А так мы её скорее всего напугали и запутали.
art , запрет то не помешает, но... На самом деле у каждой задачи есть множество решений. Я как бы уже решил подобную задачу, а возможно кто то из вас найдет более оптимальное решение. Вот собственно и все мое любопытство в этом вопросе... Так что ACIDovsky , не грусти, все вполне себе хорошо. А яйцами померяться можно только по приколу, а если кто то здесь не согласен, то ACIDovsky пошли грустить вместе. |
![]() |
![]() |