Вместо того, чтобы пытаться изменить индекс, вы можете переключить свойство tabEnabled оставшихся объектов на false, когда фокус находится на первом объекте, включите его снова.
Этот пример не структурирован в функциях, это просто демонстрационный код, чтобы уточнить, что я имею в виду
var objects:Array = [a , b , c , d , e];
//set a KeyboardEvent listener &
//increment the currentIndex value when TAB is pressed
var currentIndex:int = -1;
//when you need to reset , disable tabEnabled property
//for remaining objects & reset the currentIndex
for( var i:int ; i < objects.length ; ++i )
if( i > currentIndex )
objects[i].tabEnabled = false;
currentIndex = -1;
stage.focus = null;
Нажмите вкладку еще раз, фокус на
//enable objects
for( var i:int ; i < objects.length ; ++i )
objects[i].tabEnabled = true;