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

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

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

Регистрация: Apr 2012
Сообщений: 48
Attention Помогите разобраться с Drag_and_Drop и открытием внешнего swf

начал знакомство с flash и as3, поскольку потребовалось на работе.
Мне надо сделать чтобы при переносе элемента детали (.png) c панели элементов запускался из вне swf.
По урокам разобрался с Drag_and_Drop и запуском внешнего swf, а вот связать воедино не получается.
Помогите пожалуйста разобраться, если возможно! Заранее огромное спасибо!

Запуск swf написано в первом кадре.
import flash.net.URLLoader;

Код AS3:
var myLoader:Loader = new Loader ();
 
myLoader.x=50;
myLoader.y=50;
 
korpus.addEventListener(MouseEvent.CLICK, korpus_bk);
 
function korpus_bk(myevent:MouseEvent):void 
{
	var myURL:URLRequest=new URLRequest("swf/korpus_buksa.swf");
	myLoader.load(myURL);
	addChild(myLoader);
}
Drag_and_Drop в отдельном файле .as

Код AS3:
package bk.file {
 
import flash.display.MovieClip;
import flash.events.MouseEvent;
 
	public class korpus extends MovieClip {
 
		public function korpus()
		{
			buttonMode = true;
			addEventListener( MouseEvent.MOUSE_DOWN, down );		
		}
		protected function down ( event:MouseEvent ) :void
		{
			parent.addChild ( this );
			startDrag();
			stage.addEventListener ( MouseEvent.MOUSE_UP, stageUp );
		}
 
		protected function stageUp ( event:MouseEvent ) :void
		{
			stage.removeEventListener ( MouseEvent.MOUSE_UP, stageUp );
			stopDrag();
 
			if(dropTarget)
			{
				if( dropTarget.parent.name == "korz")
				{
					scaleX = scaleY = 0.5;
					alpha = 0.5;
					y = stage.stageHeight - height - 300;
					buttonMode = false;
					removeEventListener(MouseEvent.MOUSE_DOWN, down);
 
				}				
			}
		}
 
 
 
	}
}

Старый 19.04.2012, 21:36
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 2  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
ну и сделайте все в одном классе:
Код AS3:
package bk.file {
 
import flash.display.MovieClip;
import flash.events.MouseEvent;
 
	public class korpus extends MovieClip {
 
var myLoader:Loader;
		public function korpus()
		{
			buttonMode = true;
			addEventListener( MouseEvent.MOUSE_DOWN, down );
                        myLoader = new Loader ();
		        myLoader.x=50;
                        myLoader.y=50;
		}
		protected function down ( event:MouseEvent ) :void
		{
			parent.addChild ( this );
			startDrag();
			stage.addEventListener ( MouseEvent.MOUSE_UP, stageUp );
                       var myURL:URLRequest=new URLRequest("swf/korpus_buksa.swf");
	                myLoader.load(myURL);
	                addChild(myLoader);
		}
 
		protected function stageUp ( event:MouseEvent ) :void
		{
			stage.removeEventListener ( MouseEvent.MOUSE_UP, stageUp );
			stopDrag();
 
			if(dropTarget)
			{
				if( dropTarget.parent.name == "korz")
				{
					scaleX = scaleY = 0.5;
					alpha = 0.5;
					y = stage.stageHeight - height - 300;
					buttonMode = false;
					removeEventListener(MouseEvent.MOUSE_DOWN, down);
 
				}				
			}
		}
 
 
 
	}
}

Старый 20.04.2012, 10:22
nayanov вне форума Посмотреть профиль Отправить личное сообщение для nayanov Найти все сообщения от nayanov
  № 3  
Ответить с цитированием
nayanov

Регистрация: Apr 2012
Сообщений: 48
Спасибо огромное!!! я примерно так и сделал, только вставил код во второй If, дописал несколько нужных строк все заработало так как надо.

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

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

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


 


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


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