Такой код:

Код:
public function addListenersUser():void
{
for (var i = 0; i < itemsCount; i++)
{
items[i].addEventListener(MouseEvent.MOUSE_OVER, function (e:MouseEvent)
{
items[i].setCurTextFormat();
});
}
}
При MOUSE_OVER возникает ошибка:

Код:
Error #1010: A term is undefined and has no properties.
at MethodInfo-785()
В чем может быть проблема?
Причем странная вещь, в функции события определены переменные items и i но items[i] - undefined, видимо ошибка из-за этого, но почему так происходит и как этого избежать?
А, понятно, i у нас после выполнения функции имеет значение выходящее за пределы диапазона индексов массива, надо что-то придумать другое.
А можно как-нибудь обратиться непосредственно к объекту для которого происходит событие?
Разобрался, надо так:

Код:
e.target.parent.setCurTextFormat();