TextField Flash ActionScript

package {
  import flash.display.Sprite;
  import flash.text.TextField;
  import flash.events.MouseEvent;
  import flash.geom.Rectangle;
  public class Text extends Sprite {
    private var _field:TextField;
    private var _highlight:Sprite;
    public function Text(  ) {
      _field = new TextField(  );
      _field.border = true;
      _field.background = true;
      _field.multiline = true;
      _field.wordWrap = true;
      _field.selectable = false;
      _field.width = 400;
      _field.height = 400;
      addChild(_field);
      _field.text = "Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text ";
      _field.addEventListener(MouseEvent.CLICK, onClick);
      _highlight = new Sprite(  );
      addChild(_highlight);
    }
    
    private function onClick(event:MouseEvent):void {
      var index:int = _field.getCharIndexAtPoint(mouseX, mouseY);
      var rectangle:Rectangle = _field.getCharBoundaries(index);
      _highlight.graphics.clear(  );
      _highlight.graphics.lineStyle(0, 0, 0);
      _highlight.graphics.beginFill(0x00FFFF, .25);
      _highlight.graphics.drawRect(rectangle.x, rectangle.y, rectangle.width, rectangle.height);
      _highlight.graphics.endFill(  );
    }
    
  }
}