Urgent! Please Help me solve this problem!



var MapBtnArray:Array = [];
var MapBtnSprite:Sprite;
var i:int;
var j:int;
gogo();

function gogo():void
{
   while (MapBtnArray.length  < 10)
  {
        MapBtnSprite = new Sprite();
        MapBtnSprite.graphics.lineStyle(1,0x000000);
	MapBtnSprite.graphics.beginFill(0xFFFFFF); 
	MapBtnSprite.alpha = 0.5;
	MapBtnArray.push(MapBtnSprite);
   }

	MapBtnArray[0].graphics.drawRect(17,125, 90,140);
	MapBtnArray[1].graphics.drawRect(145,98, 63.5,90);
	MapBtnArray[2].graphics.drawRect(145,200, 63.5,90);
	MapBtnArray[3].graphics.drawRect(210,200, 85,62);
	MapBtnArray[4].graphics.drawRect(308,200, 87,62);
	MapBtnArray[5].graphics.drawRect(397,200, 63.5,90);
	MapBtnArray[6].graphics.drawRect(497,125, 90,140);
	MapBtnArray[7].graphics.drawRect(397,98, 63.5,90);
	MapBtnArray[8].graphics.drawRect(370,155, 25,32);
	MapBtnArray[9].graphics.drawRect(342,155, 25,32);
			

	for (i= 0; i < MapBtnArray.length; i++)
	{
		addChild(MapBtnArray*);
	}

	for (i = 0; i < MapBtnArray.length; i++)
{
   	MapBtnArray*.buttonMode = true;
  	MapBtnArray*.addEventListener(MouseEvent.CLICK,roomClicked);

}

	
}
		
		
function roomClicked (e:MouseEvent) :void
{
	j = MapBtnArray.indexOf (e.currentTarget);
	createLocator();
				
}
		
		
function createLocator():void
{
	trace (j);
	trace (MapBtnArray[j].x);
}



I’m using to code above to create several sprite on the stage, but when I click on the sprite, the index of each trace work just fine (output of J is according to the target i click); however MapBtnArray[j].x keep equals to “0”

can someone tell me why? I want the coordinate of the sprite on stage, how come what i get is “0” instead?