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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 21.08.2013, 21:51
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 11  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
вот за это
Цитата:
stage.addChild(e.target);
руки бы оторвал
__________________
:)

Старый 21.08.2013, 23:46
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 12  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Для popup'ов ок.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

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

Регистрация: Aug 2013
Сообщений: 89
Спасибо, akopalipsis, .
Почитал, очень помогло, здесь даже примерчики были.
Цитата:
Что написать, чтобы объекты были на разных планах: circle был на 1-ом плане, a1 на 2-ом плане, a2 на 3-м плане?
Вот, что получилось:
Код AS3:
var container1:Sprite=new Sprite;//создать контейнер container1 для хранения кругов
 
var circle1:Sprite = new Sprite();//нарисовать круг 1 (circle1)
circle1.graphics.lineStyle(1, 0x000000);
circle1.graphics.beginFill(0x0000cc, 1);
circle1.graphics.drawCircle(0, 0, 40);
circle1.y=80;
circle1.x=170;
 
 
var circle2:Sprite = new Sprite();//нарисовать круг 2 (circle2)
circle2.graphics.lineStyle(1, 0x000000);
circle2.graphics.beginFill(0x33cc00, 1);
circle2.graphics.drawCircle(0, 0, 40);
circle2.y=95;
circle2.x=184;
 
var circle3:Sprite = new Sprite();//нарисовать круг 3 (circle3)
circle3.graphics.lineStyle(1, 0x000000);
circle3.graphics.beginFill(0xffff99, 1);
circle3.graphics.drawCircle(0, 0, 40);
circle3.y=122;
circle3.x=180;
 
var circle4:Sprite = new Sprite();//нарисовать круг 4 (circle4)
circle4.graphics.lineStyle(1, 0x000000);
circle4.graphics.beginFill(0xff9933, 1);
circle4.graphics.drawCircle(0, 0, 40);
circle4.y=145;
circle4.x=188;
 
container1.addChild(circle1);//поместить circle1 в container1
container1.addChild(circle2);//поместить circle2 в container1
container1.addChild(circle3);//поместить circle3 в container1
container1.addChild(circle4);//поместить circle4 в container1
addChild(container1);// поместить все объекты контейнера на сцену
//container2.addChild(container1);
//addChild(container2);
trace("container1.getChildIndex(circle):",container1.getChildIndex(circle1));//показать на каком плане объект(если число большое,то объект близко расположен от наблюдателя)
container1.setChildIndex(circle1,(container1.numChildren-1)); //переместить circle1 на передний план.
 
trace("container1.getChildIndex(circle):",container1.getChildIndex(circle1));//показать на каком плане объект
trace("container1.numChildren:",container1.numChildren);//показать количество планов(количество объектов) для container1
Добавлено через 22 минуты
Ребят, вот проблема: не могу с помощью setChildIndex изменить индекс e.target 'a по нажатии на него левой клавиши мыши(событие).Вот мой код, что здесь нужно исправить?

Код AS3:
import flash.events.MouseEvent;
var i:int=1
 
 
addEventListener(MouseEvent.CLICK,funct);
 
function funct(e:MouseEvent):void
						{ 
	if(i==1) {
			e.target.startDrag();
			trace(e.target.name,"has been taken");
 
			i=2;
 
			}
 
	else if (i==2){
	       		 e.target.stopDrag();
				trace(e.target.name, "has been dropped");
				i=1;
				//e.target.x=100
				//e.target.y=100
				  }
						}

Уточню: как, применить этот метод
Код AS3:
container1.setChildIndex(circle1,(container1.numChildren-1));
к вот этому самому
Код AS3:
e.target
?

Добавлено через 58 минут
Всё, разобрался, благодарю всех участников, вот как должно быть:
Код AS3:
import flash.events.MouseEvent;
var i:int=1
 
 
addEventListener(MouseEvent.CLICK,funct);
 
function funct(e:MouseEvent):void
						{ 
	if(i==1) {
			container1.setChildIndex(e.target as DisplayObject,(container1.numChildren -1));
			e.target.startDrag();
			trace(e.target.name,"has been taken");
 
			i=2;
 
			}
 
	else if (i==2){
	       		 e.target.stopDrag();
				trace(e.target.name, "has been dropped");
				i=1;
				//e.target.x=100
				//e.target.y=100
				  }
						}


Последний раз редактировалось UserSuperPupsik; 22.08.2013 в 18:43.
Создать новую тему Ответ Часовой пояс GMT +4, время: 14:20.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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