Hauts, нет, так не помогло:

Код AS3:
if (e.currentTarget is Krug1)
{
trace("Krug1");
}
Иф не срабатывает, видимо потому что e.currentTarget = Area1, то есть квадрату-родителю.
Спасибо за указание на прием: is Object, я не сообразил что так можно.
Deimos747, AlexLucas, Котейка, благодарю за наводку на .target, сделал вот так:

Код AS3:
if (e.target is Krug1)
{
trace("Krug1");
}
else if (e.target is Krug2)
{
trace("Krug2");
}
else if (e.target is Krug3)
{
trace("Krug3");
}
Всё работает : ) Вроде никакие заморочки с шейпами и хитрыми номерами не нужны.
Или может быть они были бы нужны в каком-то более сложном случае? Например при сильной вложенности, или еще как.
Dukobpa3,

Код AS3:
А вот это слегка вырвиглазое решение.
А почему кстати? Я только недавно изучаю AS3.0, но по совету maincode расширял в данном случае не Sprite, а EventDispatcher.
Dukobpa3,
Цитата:
|
Подписаться на все три клика одним листенером и смотреть event.currentTarget
|
Не совсем понимаю, что вы имеете ввиду? То есть на каждый кружок повесить addEventListener, но который ссылается на единый обработчик?
SvetozarPNZ, мне просторе решение с target помогло.
Про useCapture не в курсе, возможно это нужно в более сложных случаях вложенности объектов? За ссылку спасибо.