Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.11.2008, 14:08
loewen вне форума Посмотреть профиль Отправить личное сообщение для loewen Найти все сообщения от loewen
  № 1  
Ответить с цитированием
loewen

Регистрация: Nov 2008
Сообщений: 5
По умолчанию Помогите с кнопками для навигации по сайту

Бонжур сава!

Подскажите, пожалуйста, как правильно переделать функцию, чтобы при событии onPress, мувиклип-кнопка проигрывался до определённого кадра и останавливался, оставаясь как бы в "активном" положении. А когда нажимаешь уже на другую кнопку, первая должна доиграть свой цикл до конца, а другая доиграть до того же кадра и остаться как бы в активном состоянии) Что-то не получается сообразить, с какой стороны подойти к решению этой задачки)

Исходник прилагается)

http://***********/9219087

Старый 23.11.2008, 20:22
urasfinks вне форума Посмотреть профиль Отправить личное сообщение для urasfinks Найти все сообщения от urasfinks
  № 2  
Ответить с цитированием
urasfinks

Регистрация: Mar 2008
Сообщений: 34
Я предполагаю что лучше написать класс кнопки. В свойства которого будет входть отслеживание двух положений мыши 1) на обьекте 2) за пределами обьекта. Также переменная обьекта которая будет показывать в каком состоянии сейчас находиться обьект. Тоесть пассивен ли он, активен, или неопределён. Когда на обьект наведём мышку изначально спроситься а в каком состоянии сейчас обьект:
1) Если пассивен..до заставим его проигрываться до середины.
2)Если неопределён ничего не делать пока не стант определён
3)Если активен тоже ничего не делать
Когда мышька уйдёт с обьекта то
1)Если пассивен то ничего не делать
2)Если неопределён то поставить флаг чтобы проигрывалось до конца
тоесть посередине анимации посмотреть на флаг и если он false то остановить анимацию если true то продолжить
3)Если активен то продолжить анимаци до конца.
Ну и после окончания анимации вернуть его в начальное состояние.
Помимо всего этого к классу надо будет прикрутить свойство выбора шаблона. Ну грубо говоря какую кнопку сдублировать в этот обьект. Возможно это нудно..но зато ты после сможешь легко добавить ещё пару кнопок без проблем..даже не пару а сотню =) всеголишь создавая экземпляры класса.

Старый 24.11.2008, 13:52
loewen вне форума Посмотреть профиль Отправить личное сообщение для loewen Найти все сообщения от loewen
  № 3  
Ответить с цитированием
loewen

Регистрация: Nov 2008
Сообщений: 5
urasfinks, ZergMaster, большое спасибо за советы) буду пробовать)

Старый 24.11.2008, 00:12
ZergMaster вне форума Посмотреть профиль Отправить личное сообщение для ZergMaster Найти все сообщения от ZergMaster
  № 4  
Ответить с цитированием
ZergMaster
 
Аватар для ZergMaster

Регистрация: May 2008
Адрес: Питер
Сообщений: 385
Отправить сообщение для ZergMaster с помощью ICQ Отправить сообщение для ZergMaster с помощью Skype™
ведь все очень просто.

есть два мувика but1 и but2. внутри обоих одинаковая анимация кнопки состоящая, допустим, из 15 кадров. На первом и десятом кадре навешено stop();

Код AS1/AS2:
onPress.but1=function() {
but1.gotoAndPlay(2)
but2.gotoAndPlay(11)
}
 
onPress.but2=function() {
but2.gotoAndPlay(2)
but1.gotoAndPlay(11)
}
Добавлено через 2 минуты
а. Правда нужно ещё, чтобы определялось была ли нажата до этого кнопка. Для этого надо создать какие-нить булевы переменные и поиграться с ними.


Последний раз редактировалось iNils; 24.11.2008 в 00:21.
Старый 24.11.2008, 17:24
nOobCrafter вне форума Посмотреть профиль Отправить личное сообщение для nOobCrafter Найти все сообщения от nOobCrafter
  № 5  
Ответить с цитированием
nOobCrafter

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
Код AS1/AS2:
onPress.but1=function() {
but1.gotoAndPlay(2)
but2.gotoAndPlay(11)
but1.enabled = false;
but2.enabled = true;
}
 
onPress.but2=function() {
but2.gotoAndPlay(2)
but1.gotoAndPlay(11)
but1.enabled = true;
but2.enabled = false;
}
Можно так попробовать если я правильно понял.
А вообще я это делал так:

Код AS1/AS2:
// как только загружен сайт - грузится "Главная" страница и соответственно кнупочку  "главная" надо заблочить.
IB_prod_btn.enabled = true;    // блокируем кнопки при нажатии, т.е. когда менюшка вызвана то кнопку нажать уже нельзя
IB_sup_btn.enabled = true;     //
IB_about_btn.enabled = true;
IB_main_btn.enabled = false;
main_btn.gotoAndStop(20);    
 
mouse_over_prod = false;       // контролируем анимацию кнупки при нажатии
mouse_over_sup = false;        //
mouse_over_about = false;     //
mouse_over_main = true;
// пишем для ИБ, исполнение 
// главная
IB_main_btn.onRollOver = function() { mouse_over_main = true; }  // соответственно при наведении анимация играется
IB_main_btn.onRollOut = function()  { mouse_over_main = false; } // при убирании анимация играется назад
 
IB_main_btn.onRelease = function()  { 
_root.Window1.gotoAndPlay("stop"); 
link = "main"; 
 
IB_prod_btn.enabled = true;    // блокируем кнопки при нажатии, т.е. когда менюшка вызвана то кнопку нажать уже нельзя
IB_sup_btn.enabled = true;     //
IB_about_btn.enabled = true;
IB_main_btn.enabled = false;
 
mouse_over_prod = false;       // контролируем анимацию кнупки при нажатии
mouse_over_sup = false;        //
mouse_over_about = false;     //
mouse_over_main = true;
}


Последний раз редактировалось nOobCrafter; 24.11.2008 в 17:31.
Старый 24.11.2008, 22:37
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 6  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
)))) А я так... Вездесущие клипы-кнопки...
Вложения
Тип файла: rar Interface_RedMercury.rar (16.8 Кб, 135 просмотров)
__________________
Reality.getBounds(this);

Создать новую тему Ответ Часовой пояс GMT +4, время: 12:11.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 12:11.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.