Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Кнопки
Flash Zone Forum > Macromedia Flash > Общие вопросы
Ticket
Вполне осознаю, что вопрос глупый и неуместный, но очень меня тревожащий.
Точнее меня тревожит моя непроходимая глупость... но не в этом дело...
Не поможете ли...
Делаяю я кнопку... прописываю все четыре позиции... в позиции DOWN прописываю movieclip.
ВОПРОС!
Как сделать так, чтобы при отпускании кнопки мувик проигрывался до конца, а не обпывался на полуслове...
А ещё лучще, как сделать так, что бы кнопка проигрывала клип наоборот при отпускании.
И ещё ниак не могу разобраться с командами
rollIn и rollOut

Или хот дайте ссылочку, где это толково описано... ПОЖАЛУСТА!!!
MustLive
Цитата(Ticket @ 25.11.2005 - 13:04)
Делаяю я кнопку... прописываю все четыре позиции... в позиции DOWN прописываю movieclip.
ВОПРОС!
Как сделать так, чтобы при отпускании кнопки мувик проигрывался до конца, а не обпывался на полуслове...

Ticket

Для этого вам нужно в позиции DOWN программно сказать мувиклипу (в котором находится необходимая вам анимация) чтобы он запустился. При этом в конце этого мувиклипа поставьте стоп, дабы он не зациклился.

Сделать это можно через Телтаргет (как было принято в старых версиях флеша, до 5й включительно, в 6й это уже считалось устаревшим), или (с 6й ака МХ версии стало нормой) прописать путь к нужному мувику и запустить его:

_root.MyMovieForDownState.start();

Цитата
А ещё лучще, как сделать так, что бы кнопка проигрывала клип наоборот при отпускании.

Есть несколько интересных и хитрых методик (кроме как самому ручками расставить все кадры в обратном порядке - сделать отдельный мувик и вызывать его).

О реализации обратного проигрывания я рассказывал в пятом выпуске нашей рассылки:
http://subscribe.ru/archive/comp.design.al...7/09230726.html

Раздел Flash в вопросах и ответах: Как во Флеше реализовать проигрыш кадров в обратную сторону?

Цитата
И ещё ниак не могу разобраться с командами
rollIn и rollOut

Во влеше есть rollOver и rollOut (rollIn я не встречал во флешах до версии МХ включительно).

Это событие возникает, когда вы подводите указатель мыши к объекту или отводите от объекта.

Дополнительно можете почитать в хелпе Флеша в разделе "ActionScript Dictionary" по методу "on":

Цитата
Usage

on(mouseEvent) {
statement(s);
}

Parameters

rollOut The pointer rolls outside of the button area.
rollOver The mouse pointer rolls over the button.


Цитата
Или хот дайте ссылочку, где это толково описано... ПОЖАЛУСТА!!!

Воспользуйтесь для этого поисковыми системами.
Вот например посмотрите здесь: http://www.google.ru/search?q=flash+rollOver+rollOut
Ticket
БОЛЬШОЕ СПАСИБО!

Только всё равно никак мне не добиться того эффекта который я хотел...
Вот смотри...
Кнопка в покое - ничё не движеться.
При наведении - кнопка начинает подпрыгивать на месте, при чём делает это постоянно пока над кнопой находиться курсор
...ну это ещё я в состоянии сделать... я тут приминяю комбинирование MovieClip и Button. (Чего мне стоило до этого додуматься, это надо было видеть...)...
При нажатии на кнопку - она зависает в воздухе и загораеться.
...с эжтим тоже всё понятно...
А КАК СДЕЛАТЬ ТАК ЧТОБЫ...
При убирании курсора - кнопка выполянла клип в обратном порядке, нуу или просто проигрывала другую анимацию.
ВОТ! Вот чего я никак не могу добиться... и чтоб было это всё плавно и не дёрганно...
Вобщем... может я слишком много прошу, а?
Ну ведь видел я такое и не раз...
НИЧЧЁ не понимаю.
...извините уж, за мою не проходимую тупость...
Уже и несколько учебников раздобыл а там ни слова... может я просто не там смотрю?

Но всё ранво БОЛЬШОЕ СПАСИБО!
MustLive
Цитата(Ticket @ 30.11.2005 - 10:13)
Только всё равно никак мне не добиться того эффекта который я хотел...

Ticket, постараюсь помочь.

Цитата
Вот смотри...
А КАК СДЕЛАТЬ ТАК ЧТОБЫ...
При убирании курсора - кнопка выполянла клип в обратном порядке, нуу или просто проигрывала другую анимацию.

Используй:
Код
on (rollOut) {
}

Где пропиши программный вызов другой анимации или промотку мувика (нужного) в обратном порядке.

О том как реализовать проигрывание в обратном порядке я уже писал ранее:
Цитата("MustLive")
О реализации обратного проигрывания я рассказывал в пятом выпуске нашей рассылки:
http://subscribe.ru/archive/comp.design.al...7/09230726.html

Раздел Flash в вопросах и ответах: Как во Флеше реализовать проигрыш кадров в обратную сторону?

Цитата
и чтоб было это всё плавно и не дёрганно...

Для этого увеличь фреймрейт флеш-ролика (больше кадров в секунду поставь) или при текущих кадрах/с добавь кадров в таймлайн в тех местах флешки где чуствуется дёрганность. Подбери для себя тот порог количества кадров или частоты кадров/с, когда всё будет для тебя оносительно плавно.

Цитата
Но всё ранво БОЛЬШОЕ СПАСИБО!

Пожалуйста.
Ticket
...я наверно щас "ТУПИТЬ" буду... но...

ВОТ! ИМЕННО!!!
Создаю я значит МувиКлип в котором делаю кнопку и прописываю на ней он ролОвер начать проигрывать.
А КАК ПРОПИСАТЬ РОЛЛАУТ!
Где точнее его прописать?
...и где создавать отдельную для него мультипликацию...
Я могу исходник попробывать выложить еси я не поянтно объясняю...
ИМЕННО с роллОвер и роллАут я и не могу понять... как их вместе прописывать, чтоб они различные анимации проигрывали...
Ticket
Вот на этом шаблоне кнопочка "ENTER" анимируется...
КАК?

http://www.templatemonster.com/flash-templates/9566.html

П.С.: Бредовый пример, понимаю, но того что объяснял найти никак не могу...
MustLive
Цитата(Ticket @ 30.11.2005 - 17:51)
Вот на этом шаблоне кнопочка "ENTER" анимируется...
КАК?

http://www.templatemonster.com/flash-templates/9566.html

Всё делается так как я объяснял выше smile.gif

Цитата
П.С.: Бредовый пример, понимаю, но того что объяснял найти никак не могу...

Как раз подходящий пример - для темы нашего разговора.

Типичный пример ролин и ролаут анимации.
MustLive
Цитата(Ticket @ 30.11.2005 - 17:38)
...я наверно щас "ТУПИТЬ" буду... но...

Постараюсь помочь. На этот раз более детально и углюблённо.

Цитата
Создаю я значит МувиКлип в котором делаю кнопку и прописываю на ней он ролОвер начать проигрывать.

Забей на кнопку. Нужен мувиклип.

У кнопки 4 состояния: 3 состоянии и область нажатия. Причём рол-аут там не фигурирует!

И для кнопки роловер сделать при желании можно (с использованием мувиклипов), но не её это дело. Весь набор состояний, и в частности рол-аут, предназначены для мувиклипа.

Если хочешь можешь сделать несколько вложенных мувиклипов - как тебе удобно. Хотя нужно быть осторожным в плане глюков флеша с некорректной обработкой разных действий на больших уровнях вложенности у объектов наследников мувика-класа - приходилось сталкиваться, когда флеш не хотел реагировать на события, которые должен наследовать объект, и всё тут. В таких случаях приходится переделывать иерархию объектов (и мувиков-классов) на сцене.

Но в твоей сцене среди обектов с ролаутом должны фигурировать лишь мувиклипы (на любом уровне вложенности твоей "кнопки с рол-аутом").

Цитата
А КАК ПРОПИСАТЬ РОЛЛАУТ!
Где точнее его прописать?

Нажимаешь мышкой на созданный мувик (верхнего уровня, если у тебя есть вложенность, а она может понадобится). Жмёшь F2 - и вводишь обработчик на роловер и ролаут. Пишешь руками акшон скрипт код.

on(rollOver) {
// код для роловера
}

on(rollOut) {
// код для ролаута
}

В каждом из блоков кода ты делаешь вызовы анимации. Например у тебя в первом кадре твоего мувиклипа (верхнего уровня, для которого ты код прописывал) стоит мувик (на первом кадре которого stop) с анимацией роловера. Так при роловере ты говоришь ему запуститься (прописуешь полный путь иерархии). Во втором кадре у тебя мувик с ролаут анимацией - и ты в ролауте делаешь запуск того мульта. В обоих случаях вначале ты переходишь в верхнем мувиклипе в нужны кадр (1й или 2й, где анимация "стопнутая"), а после "стартишь" анимацию.

Подобный метод относится к любым событиям, которые поддерживает флеш.

Заметь у твоего мувиклипа верхнего уровня во всех его кадрах стоят стопы. Дабы он держал выбранную "текущей"анимацию.

Цитата
...и где создавать отдельную для него мультипликацию...

В отдельных мувиклипах, которые будут того же размера и находится внутри первого мувиклипа (верхнего уровня).

Цитата
ИМЕННО с роллОвер и роллАут я и не могу понять... как их вместе прописывать, чтоб они различные анимации проигрывали...

Я надеюсь понятно объяснил? Здесь ничего сложного.

Сделай раз и всё поймёшь. И дальше вопросов по событиям для объектов во флеше у тебя уже не возникнет wink.gif. Все детали (особенно для новых событий) ты всегда в хелпе сможешь найти, главное суть пойми, того что я написал. И всё будет хорошо.
Ticket
...тааак... а теперь вот такая загвоздочка... почему-то вложенный клип не перенапрявляет на другие сцены... это нормально?
То есть я во вложенный клип на последнем кадре пишу перейти на первый кадр второй сцены...а при тестинге он мне крутит по кругу анимацию и всё...

НО ВСЁ РАВНО БОЛЬШОЕ СПАСИБО!!!
...наконец-то разобрался, а то уж... думаю савсем я... того...
зЁмный вам поклон, глубокоуважаемый МастЛив, и вечный почёт!!!
MustLive
Цитата(Ticket @ 9.12.2005 - 17:16)
...тааак... а теперь вот такая загвоздочка... почему-то вложенный клип не перенапрявляет на другие сцены... это нормально?

Ticket!

Вполне нормально smile.gif

Флеш - это интересная штука. И с разными приколами, которые могуть ввести в тупик, если не знать специфики и нюансов работы.

В данном случае речь идёт об иерархии объектов и их отношении (между разными уровнями иерархии).

Чтобы перенаправить, нужно, если с вложеного, задавать указание клипу верхнего уровня - а не просто ГоТу. Да и управление лучше (меньше проблем с особенностями флеша и иерархии) делать на верхнем уровне, задавая управления вложенным объектам.

Цитата
То есть я во вложенный клип на последнем кадре пишу перейти на первый кадр второй сцены...а при тестинге он мне крутит по кругу анимацию и всё...

Такие уж особенности иерархии.

Должно помочь указание абсолютных путей. Например: _root.GotoAndPlay("Scene2");

Ещё раз повторюсь: оптимальным будет держать управление (сценой) на верхнем уровне иерархии (на вложенных - управление только объектами и анимацией вложеных уровней). Тогда всё будет работать как задумано - если придерживаться имеющейся иерархии объектов.
Русская версия IP.Board © 2001-2010 IPS, Inc.