![]() |
Момогите сделать сложное меню!!!
Продвинутые флэшеры!
Помогите! Искал на многих сайта и форумах, и тут тоже искал, но не нашел... (может плохо искал?) Проблема: как сделать такое меню http://macromedia.com/uber/nav/global.swf ??? Т.е. там при наведении на кнопку, она высвечивается синим цветом. Когда отводишь курсор с кнопки, синий цвет не резко меняется на серый (Over на Up) а плавно, т.к. прокручивается маленький флэшик. Как такое сделать? Где можно найти исходник? Помогите! P.S. На одном из форумов по флэшу нашел вот что: "Где можно узнать, как сделана система меню у Макромедии на сайте (это их стандартное меню)? Что-то похожее (или не очень?) есть в [Flas path]\Samples\Hierarchical.fla" У меня Flash5 и никакого Hierarchical.fla у меня нет :( Если это действительно, как на macromedia.com, пришите мне, пожалуйста! |
Просто вставь в третий фрейм (Out) кнопки клип с плавным изменением цвета кнопки.
|
Лучше создать клип со всеми переходами, а сверху прозрачную кнопку (закрасить только 4-й кадр). Потом просто управляешь клипом через кнопку. Такой способ дает большую гибкость.
|
Цитата:
|
делай мув с плавным посинением, а потом плавным возвратом в исход состояние кнопки, и в др. сслое - прозрачн. кнопку.
on(rollOver) - goto... on(rollOut) - goto... |
Скакать будет, падла. Если мышу уберёшь раньше, чем она посинеет - будет скачок цвета. Надо либо реверсировать посинение через вложенный трёхкадровик с (forward ? nextFrame() : prevFrame()), либо перескакивать по текущему значению _currentframe на соответствующий кадр обратной анимации. Второй способ менее надёжный, зато не требует лишнего клипа. А ещё можно скриптом цвет менять, если не лень долбаться :)
|
Все это понятно, я пробовал.
Скачет. Что такое "реверсировать посинение через вложенный трёхкадровик с (forward ? nextFrame() : prevFrame())"??? Куда ЭТО писать? (forward ? nextFrame() : prevFrame()) ??? |
Делаешь пустой мув из двух кадров. Первый кадр - пустой, во второй пишешь код:
Код:
forward ? _parent.nextFrame() : _parent.prevFrame();Код:
stop();Код:
mover.gotoAndStop(1);Код:
on(rollOver){ |
Можно сделать в первом кадре кнопки мув с плавным затуханием, а во втором с плавным посинением. Чтоб не дергалось - отслеживать текущий кадр и начинать процесс с него: например в мувике 10 кадров, посинеть успело до 4-ого, значить белеть должно с 10-(4+1)=7...
|
Как понял, так и сделал - не получилось...
Подробнее... "Делаешь пустой мув из двух кадров. " Т.е. создать новый Movie Clip? Создал. Назвал, например, "2". Во второй кадр вставил: forward ? _parent.nextFrame() : _parent.prevFrame(); gotoAndPlay(1); "Делаешь мув с анимацией посинения (только в одну сторону - из обычного состояния в синее). Вкладываешь в него вышеописанный двухкадровик, и обзываешь, скажем, 'mover'." Я созлаю еще один новый Movie Clip. Называю его "mover". В нем четыре слоя: 1) мув с анимацией посинения 2) код (в первом и последнем кадре) 3) слой с вложенным из библиотеки мувом "2" (двухкадровик) 4) невидимая кнопка с кодом: on(rollOver){ mover.forward=true; mover.play(); }on(rollOut){ mover.forward=false; mover.play(); } Теперь в пока пустую Сцену вкладываю "mover". Все.Test Movie. Вижу только начальную стадию синения. (первый кадр) Вот так. Что я не так сделал. |
| Часовой пояс GMT +4, время: 00:08. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.