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

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

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

Регистрация: Sep 2009
Сообщений: 68
По умолчанию Как узнать имя кликнутого child-элемента

Есть главный мувик main, в нём вложено ещё несколько мувиков.
Можно ли как-то присвоив лиснер на главный мувик узнать на какой из мувиков внутри его кликнули (типа узнать instance name) ?

Старый 12.11.2010, 16:06
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 2  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
e.target
__________________
тут я

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

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Код AS3:
package 
{
	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
 
	/**
	 * @author bav
	 */
	public class Main extends Sprite
	{		
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			var main:MovieClip = new MovieClip();
			var first:MovieClip = new MovieClip();
			var second:MovieClip = new MovieClip();
 
			main.name = "main";
			first.name = "first";
			second.name = "second";
 
			main.addChild(first);
			main.addChild(second);
			addChild(main);
 
			first.graphics.beginFill(0xFF0000);
			first.graphics.drawRect(0, 0, 50, 30);
			first.graphics.endFill();
 
			second.graphics.beginFill(0x0000FF);
			second.graphics.drawRect(55, 0, 50, 30);
			second.graphics.endFill();
 
			main.addEventListener(MouseEvent.CLICK, clickHandler);
		}
 
		private function clickHandler(e:MouseEvent):void
		{
			trace((e.target as MovieClip).name);
		}
	}
}


Последний раз редактировалось bav; 13.11.2010 в 12:57.
Старый 12.11.2010, 17:36
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
bav, надеюсь, что это просто пример, написанный на коленке. Вложенные функции, нет типизации у e.target и намек на код в кадре...
__________________
тут я

Старый 13.11.2010, 12:20
bav вне форума Посмотреть профиль Отправить личное сообщение для bav Найти все сообщения от bav
  № 5  
Ответить с цитированием
bav
 
Аватар для bav

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Да, так и есть. Был применен коленчатый метод. Исправляю выше.


Последний раз редактировалось bav; 13.11.2010 в 12:57.
Создать новую тему Ответ Часовой пояс GMT +4, время: 14:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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