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

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

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

Регистрация: Nov 2008
Сообщений: 2
Question Раздвигающееся меню, не работает gotoandplay

Хочу сделать меню, чтобы при наведении мыши кнопка увеличивалась, а остальные уменьшались, как здесь: http://www.templatemonster.com/flash...tes/14087.html
Пока делаю для двух кнопок(потом будет5), но не работает функция gotoandplay(номер кадра мувика), флэшка переходит на соответствующий кадр и на нем останавливается, хотя должна играть дальше.
У нас есть мувик со сценариями разъезжания и съезжания для каждой кнопки и код должен нас отослать к нужному куску сценария(увеличения или уменьшения кнопки) и две невидимые кнопки, на которых прописан код с присваиванием значений переменной при наведении и отведении мышки.

Вот пример кода:

На главной сцене:
Код:
var mouse_over_icon = null;
_root.icons.onEnterFrame = function() {
	if (mouse_over_icon == 1) {
   	_root.icons.gotoAndPlay(1);
	} 
    
    else if (mouse_over_icon == 2) {
    _root.icons.gotoAndPlay(11);
	}

    else if (mouse_over_icon == 3) {
    _root.icons.gotoAndPlay(21);
    }

    else if (mouse_over_icon == 4) {
    _root.icons.gotoAndPlay(31);
	}

    else {
    _root.icons.gotoAndStop(1);
	}

};
На первой невидимой кнопке:
Код:
on (rollOver) {
_root.mouse_over_icon = 1;
}
on (rollOut) {
_root.mouse_over_icon = 2;
}
on (release){
getURL("http://www.toxiclab.org/", "blank");
}
На второй соответственно:
Код:
on (rollOver) {
_root.mouse_over_icon = 3;
}
on (rollOut) {
_root.mouse_over_icon = 4;
}
on (release){
getURL("http://www.toxiclab.org/", "blank");
}
Почему код не работает, и как сделать чтобы заработало?

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

Регистрация: Mar 2008
Сообщений: 34
Возможно это не настолько легко как вы думаете(подобие кнопок). Но на вашем бы месте я бы описал 2 класса. Первый из которых был, если это можно так назвать- кнопка. Второй бы отвечал за обьекты созданные первым классом, тоесть их расположением сжатием и тд. Таким образом можно легко добавить,удалить или редактировать данную менюшку. На счёт почему не работает gotoAndStop() возможно вы пытаетесь обратиться не к тому обьекту. Возможно что этот обьект не виден в as. Попытайтесь дебагером выяснить точное расположение нужного вам обьекта для применения каких либо свойств. Но в любом случаи для того что бы при наведении все остальные уменьшались, у вас должна быть какаято общая функция, которая знает все обьекты и при активации какого либо из них пробегалась по всем и уменьшала их. Ну вообщем будите упорно биться с процедурно функциональным програмированием. Мой совет переходить на ООП. будет легче сделать.

Старый 01.12.2008, 15:16
nOobCrafter вне форума Посмотреть профиль Отправить личное сообщение для nOobCrafter Найти все сообщения от nOobCrafter
  № 3  
Ответить с цитированием
nOobCrafter

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
ММм во первых писать на обьектах уже старо, удобнее писать весь код в одном месте . Во вторых зачем это:
Код AS1/AS2:
on (rollOver) {
_root.mouse_over_icon = 1;
}
on (rollOut) {
_root.mouse_over_icon = 2;
Кинь исходник, может проще будет.

Старый 02.12.2008, 13:01
ohelga вне форума Посмотреть профиль Отправить личное сообщение для ohelga Найти все сообщения от ohelga
  № 4  
Ответить с цитированием
ohelga

Регистрация: Nov 2008
Сообщений: 2
Это параметр отслеживающий состояние - наведено - отведено от конкретной кнопки, чтобы знать увеличиваться ей или уменьшаться, а также что делать остальным кнопкам.
В общем, мне удалось решить проблему, надо просто изменять параметр mouse_over_icon сразу после наступления события _root.icons.gotoAndPlay(номер кадра); иначе функция onEnterFrame направит нас на этот кадр опять при проигрывании и клип зациклится. Приду домой, исходник кину.

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

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

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


 


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


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