![]() |
Кнопка (запутался в коде)
Все работает вроде бы, только вот при наведении нужно что бы анимация не кончалась а шла по кругу. Подскажите пожалуйста.
Код:
stop (); |
_level0 не отлавливает события onRelease, onRollOver, onRollOut
|
А может есть иной способ?
|
Сделайте клип со своей анимацией, а отдельно кнопку, которая будет управлять этим клипом.
|
Цитата:
Я кстати не использую "button" вообще, а только "MC" |
Цитата:
У Вас обработчики события "навешаны" на this, который указывает на объект/мувиклип, и можно рассудить, что последний является своего рода анимированной кнопкой.:) aksios предлагает Вам управлять Мувиклипом с помощью другого мувиклипа (кнопки). Допустим в стационарном состоянии анимация в мувиклипе у вас не воспроизводится (головка на таймлайне в первом фрейме, где Вы пропишите команду "stop"), а при наведении мышкой на кнопку анимация стартует и зацикливается. Все это делается просто с помощью функций Timeline Control. И если создаете "мувики" непрограммно, не забывайте задавать им имена в поле Instance of, чтобы можно было к ним обращаться. |
Цитата:
Спасибо, теперь я понял что имел ввиду aksios, сделать где-то не в видимости кнопку и программно сделать к ней анимацию. Такую фичу я знаю, но вот самому так сделать боюсь знаний нехватит. Лааадненько, буду импровизировать. |
Давайте, я Вам помогу... Только как можно конкретнее опишите задачу.
|
Кнопка (будь она), при наведении лупится, при отводе плавно заканчивает луп. Вот. Ну и при отжатии что бы по ссылке ходить умела. Просто. Вроде бы. Делаю все это (пытаюсь) под f8 as2.
И странно что туториала по такой кнопке нигде нет. Правда есть куча туториалов как нужно правильно рисовать кружочек... |
Вот, как говорится "топориком на коленке"... Посмотрите, может такое подойдет.
Код:
import mx.transitions.Tween;//Импортируем "твиннер", класс отвечающий за анимацию |
При наведении/убиранни курсора с кнопки лучше использовать continueTo
|
Спасибо. Посмотрел:
- немогу остановить анимацию. На стоп(отдельно) реагирует летально. Внутри сего кода никак не реагирует. - не вижу что бы она лупилась, просто зум. |
-объясните, что для Вас означает "лупится"?
- не можете остановить анимацию где? Конкретно в том коде, который я привел ранее? |
-Лупится всмысле "loop" - идет по кругу.
-Ну я свою всунул анимацию, фреймы проще говоря. |
А вы подумали лупится типа увеличивается? :)
|
Вложений: 1
Раз всунули фреймы, значит создаете анимацию непрограммно. Ну ладно, коли так нравится, значит даю пример с минимумом ActionScript.
1. Открываем новый документ во Flash. 2. Рисуем красный квадратик (пусть он будет кнопкой) 3. Жмем F8 и сохраняем этот квадратик, как "мувик" 4. Заходим в этом "мувик" и создаем анимацию. Что Вы будете делать - Ваше дело. Я просто взял и стал вращать квадрат каждые 20 кадров на 45 градусов. В итоге - 81 фрейм. Учитывая первый фрейм бездействия кнопки (стоповый, когда никаких событий не происходит) 5. Когда анимацию закончили. Пропишем в первом фрейме мувиклипа команду "stop". В последнем - gotoAndPlay(2). Думаю не нужно объяснять для чего? 6. Помещаем муви клип на главную сцену. Даем ему имя в (Instance Of) button. 7. В первом кадре сцены прописываем код: Код:
_root.button.onRollOver=function(){ |
Яснее быть и неможет. Но что бы ваш метод был без изъяна и новые поколения нупов вам были признательны, нам нужно как то решить проблему "срывания" анимации и последующего ее игнорирования на события ( во время анимации отведите резко курсор и опять наведите - поймете о чем я говорю )
|
жесткач ... че проще нарисовать кнопку ?? и анимации к ней .... и вставить их в соответствующие поля. и наглядней и качественней результат ))))))))))))))
|
skald, почисти клаву под кнопкой ноль, мне кажется она заедает.
|
ненадежно
Пример пригодился, было очень радостно, только он ненадежный оказался на больших скоростях.
Понадобилось сделать вращение шестеренок (это в логотипе). При наведении мышки на клип, проигрываются кадры зацикленно. Но! При отведении курсора нужно чтобы анимация проигралась один раз до конца без зацикливания. Если время вызова функции setInterval поставить больше 20, то возникают ошибки. Вот код: Код:
_root.button.onRollOver=function(){ |
работает
Вложений: 1
Попробовал по-другому. Через EnterFrame вроде стабильно работает, но опять же нет уверенности. Проверьте пожалуйста:
Код AS1/AS2:
|
Вложений: 1
Шестеренки вздрагивает слегка при отведении мыши, а дуги нормально вращаются. В чем может быть дело?
В принципе это мелочи, но всетаки |
| Часовой пояс GMT +4, время: 21:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.