Добавлено через 15 минут
Пользовательские события - это когда Вв класс создаете, как у Вас в примере.
Слушаете Вы его так:

Код AS3:
addEventListener(MyEvent.СТРОКОВАЯ_КОНСТАНТА,handler);
а посылаете вот так:

Код AS3:
dispatchEvent(new MyEvent(MyEvent.СТРОКОВАЯ_КОНСТАНТА));
так будет выглядеть слушатель:

Код AS3:
private function handler(event:MyEvents):void
{
}
В примере, который показывали выше нет собственного события, там только собственная константа.
Событию абсолютно без разницы, какую ему константу дадут, лишь бы только String.
Смотрите в чем разница:

Код AS3:
addEventListener(GameEvents.REMOVE_CHILD,handler);

Код AS3:
dispatchEvent(new Event(GameEvents.REMOVE_CHILD));

Код AS3:
private function handler(event:Events):void
{
}
Так будет выглядеть класс с константой:

Код AS3:
package
{
public class GameEvents
{
public static const REMOVE_CHILD:String = "remove_child";
}
}
И вот когда Вы послали в ребёнке событие удаления, в родителе поймали и удалили того, кто послал:

Код AS3:
private function handler(event:Event):void
{
var child:DisplayObject = event.target as DisplayObject;
removeChild(child);
}
Надеюсь не где не запутался.