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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 19.10.2012, 17:13
DVK вне форума Посмотреть профиль Отправить личное сообщение для DVK Найти все сообщения от DVK
  № 1  
Ответить с цитированием
DVK
[+1.3 06.10.12]

Регистрация: Sep 2012
Сообщений: 16
По умолчанию Помогите повесить xml меню на мувиклип

Доброго времени суток!!!
Подскажите пожалуйста как повесить xml меню на мувиклип (при наведении курсора мыши в верхнюю часть выезжает мувик. а при отведении курсора прячется обратно). Хочу сделать чтоб меню ездило на муувиклипе только вот не знаю как это сделать.
Код мувика:
Код AS3:
var showState:Boolean=false;
 
    stage.addEventListener(MouseEvent.MOUSE_MOVE, stage_mouseMove);
    function stage_mouseMove(e:MouseEvent):void
    {
       if (mouseY < 50 && !showState)
       {
          showState = true;
          TweenMax.to(thumb,0.5,{y:30, ease:Expo.easeOut})
	   }
       if (mouseY > 50 && showState)
       {
          showState = false;
          TweenMax.to(thumb,1,{y:-50, ease:Expo.easeOut})
		  }
    }
Код меню:
Код AS3:
import com.greensock.*;
import com.greensock.easing.*;
import com.greensock.plugins.*;
com.greensock.plugins.TweenPlugin.activate([GlowFilterPlugin]);
 
const ITEM_HEIGHT:Number = 30;
 
var xmlPath:String = "flash_menu1.1.xml";
var xml:XML;
var floor:Number = 45;
var selectedMenu:Array;
var menuCounter:uint = 0;
 
var loader = new URLLoader();
loader.load(new URLRequest(xmlPath));
loader.addEventListener(Event.COMPLETE, xmlLoaded);
 
function xmlLoaded(e:Event):void
{
    if ((e.target as URLLoader) != null )
  {
 
	  xml = new XML(loader.data);
      xml.ignoreWhitespace = true;
	  createMenus();
  }
}
function createMenus():void
{
    for each (var menu:XML in xml.menu)
  {
	  var menuItems:Array = createMenu(menu);
        for (var i= 0; i< menuItems.length; i++)
	 {
		  menuItems[i].y = floor;
		  menuItems[i].x = -120 + menuCounter * 140;
		  addChild(menuItems[i]);
	 }
  }
}
function createMenu(menu:XML):Array
{
    var menuItems:Array = new Array();
    for each (var item:XML in menu.item)
  {
	  var menuItem:MenuItem = new MenuItem();
	  menuItem.menuText.text = item.label.toString();
	  menuItem.linkTo=item.linkTo.toString();
	  menuItem.mouseChildren = false;
	  menuItem.buttonMode=true;
	  menuItem.addEventListener(MouseEvent.CLICK,navigate);
	  menuItems.push(menuItem);
  }
	var mainItem:MenuItem = new MenuItem();
 
	mainItem.mouseChildren = false;
	menuItems.push(mainItem);
    mainItem.belongsToMenu = menuItems;
	mainItem.menuText.text = menu. @ id;
	mainItem.addEventListener(MouseEvent.CLICK, mainItemClicked);
	menuCounter++;
 
    return menuItems;
}
function mainItemClicked(e:Event):void
{
	if (selectedMenu)
  {
	  for (var i =0; i<  selectedMenu.length-1; i++)
    {
	  TweenMax.to(selectedMenu[i], 0.5 , {y:floor, glowFilter:{color:0x324df, alpha:0, blurX:0, blurY:0}});
    }
  }
var clickedMenu:Array = e.target.belongsToMenu;
	selectedMenu = clickedMenu;
 
for (var j =0; j<  selectedMenu.length-1; j++)
  {
var item = selectedMenu[j];
var targetY:Number = floor + ITEM_HEIGHT*1.2*(1 + j);
	TweenMax.to(item, 0.5 , {y:targetY, glowFilter:{color:0xffffff, alpha:1, blurX:20, blurY:20}});
  }
}
function navigate(e:MouseEvent):void
{	
  var item:MenuItem = e.target as MenuItem;
  var urlRequest:URLRequest = new URLRequest(item.linkTo);
  navigateToURL(urlRequest);
}
Вот эта строка отвечает за координаты меню "var floor:Number = 45;" как ее повесить на мувиклип???

Старый 19.10.2012, 17:24
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Код довольно грамотный. почему в кадрах? Казнить, нельзя помиловать!
__________________
Марк Tween

Старый 19.10.2012, 21:17
DVK вне форума Посмотреть профиль Отправить личное сообщение для DVK Найти все сообщения от DVK
  № 3  
Ответить с цитированием
DVK
[+1.3 06.10.12]

Регистрация: Sep 2012
Сообщений: 16
Казнить нельзя, лучше помиловать!
Ведите ли уроков на as 3.0 падающих меню с xml я нашел только этот, есть много на ООП но ООП очень тяжело новичку.
Код сделан по зарубежному уроку http://tutorials.flashmymind.com/200...ctionscript-3/ (ихний ресурс что то лежит) заходил через http://www.tutoriallounge.com/2009/0...ion-tutorials/ 10 пункт под названием Advanced XML Menu
Помогите хоть советом где что посмотреть где что почитать? Если это возможно

Старый 20.10.2012, 17:46
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 4  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
ну так добавляйте пункты меню не в стейдж, а в ваш мувиклип
вместо
Код AS3:
 addChild(menuItems[i]);
пишем
Код AS3:
 thumb.addChild(menuItems[i]); //если я правильно понял ваш мувиклип(который будет перемещаться) называется thumb.

Старый 20.10.2012, 21:10
DVK вне форума Посмотреть профиль Отправить личное сообщение для DVK Найти все сообщения от DVK
  № 5  
Ответить с цитированием
DVK
[+1.3 06.10.12]

Регистрация: Sep 2012
Сообщений: 16
Цитата:
Сообщение от Isfet Посмотреть сообщение
ну так добавляйте пункты меню не в стейдж, а в ваш мувиклип
Огромное Вам спасибо!!!
Получилось работает!!!!!
Еще раз спасибо! а то я уж думал что это не возможно.

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

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

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


 


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


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