Показать сообщение отдельно
Старый 26.08.2009, 00:05
kirea вне форума Посмотреть профиль Отправить личное сообщение для kirea Найти все сообщения от kirea
  № 1  
Ответить с цитированием
kirea
 
Аватар для kirea

Регистрация: Mar 2009
Адрес: UA -- Kherson
Сообщений: 29
По умолчанию ROLL_OVER и ROLL_OUT вызываются постоянно без видимой причины

Я сделал меню, при наведении мыши пункт под мышью должен масштабироваться (вот и меню: http://tbcorp.com.ua/langSelector.swf).
Казалось бы - всё работает. Но стоит SWF-ку с меню подгрузить в основной клип через Loader, как начинаются постоянные самопроизвольные вызовы ROLL_OVER и ROLL_OUT для пункта, над которым висит мышка (смотрите внизу сцены по центру: http://tbcorp.com.ua/).

Каждый пункт меню инициализирован через:
Код AS3:
private function makeButton(mc:MovieClip):void {
	mc.buttonMode = true;
	mc.useHandCursor = true;
	mc.mouseChildren = false;
	mc.addEventListener(MouseEvent.CLICK, onClick);
	mc.addEventListener(MouseEvent.ROLL_OVER, onOver);
	mc.addEventListener(MouseEvent.ROLL_OUT, onOut);
}
Соответственно прилагаю обработчики ROLL_OVER и ROLL_OUT:
Код AS3:
private function onOver(event:MouseEvent):void {
	tweenX = new Tween(event.target, "scaleX", None.easeNone, 1.0, MENU_SCALE, 3, false);
	tweenY = new Tween(event.target, "scaleY", None.easeNone, 1.0, MENU_SCALE, 3, false);
}
/////////////////////////////////////////////////////////////////////////////////////////////////
private function onOut(event:MouseEvent):void {
	tweenX = new Tween(event.target, "scaleX", None.easeNone, MENU_SCALE, 1.0, 3, false);
	tweenY = new Tween(event.target, "scaleY", None.easeNone, MENU_SCALE, 1.0, 3, false);
}
где
Код AS3:
private var tweenX:Tween = null;
private var tweenY:Tween = null;
private const MENU_SCALE = 1.15;
Причем я обратил внимание, что если MENU_SCALE = 1 (то есть видимого изменения масштаба не происходит), то всё нормально везде.
Заранее спасибо!!!!!!


Последний раз редактировалось kirea; 26.08.2009 в 02:01.