点击字进框,点击框返回点击的地方

package com{
    import flash.display.MovieClip;
    import flash.events.MouseEvent;
    import flash.text.TextField;

    public class XYX extends MovieClip {

        private var thisMc:MovieClip;
        private var clickMc:MovieClip;
        private var txtMc:MovieClip;
        private var stepNum:Number;
        private var roundInt:int;
        private var roundArr:Array;
        public static var wordStr:String;
        public function XYX(_thisMc:MovieClip,_clickMc:MovieClip,_txtMc:MovieClip) {
            thisMc=_thisMc;
            clickMc=_clickMc;
            txtMc=_txtMc;
            txtMc.addEventListener(MouseEvent.CLICK,onTxt);
            clickMc.addEventListener(MouseEvent.CLICK,onClick);
            init();
            clickMc.buttonMode=true;
        }
        private function init() {
            roundArr=[];
            stepNum=0;

            //txtMc 变空
            for (var i:uint=0; i<txtMc.numChildren; i++) {
                var txt:TextField=txtMc.getChildAt(i) as TextField;
                txt.text="";
            }
            //选择空数字
            while (roundArr.length<clickMc.numChildren) {
                roundInt=Math.random()*clickMc.numChildren;
                if (roundArr.indexOf(roundInt)==-1) {
                    roundArr.push(roundInt);
                }
            }
            //内容填进点击的
            for (var j:uint=0; j<clickMc.numChildren; j++) {
                var _txt:TextField=clickMc.getChildAt(j) as TextField;
                _txt.text=wordStr.slice(roundArr[j],roundArr[j]+1);
            }
        }
        private function onClick(e:MouseEvent) {
            var eTarTxt:TextField=e.target as TextField;
            if (eTarTxt.alpha==1) {
                eTarTxt.alpha=0;
                for (var i:uint=0; i<txtMc.numChildren; i++) {
                    var txt:TextField=txtMc.getChildAt(i) as TextField;
                    if (txt.text=="") {
                        txt.text=eTarTxt.text;
                        break;
                    }
                }
            }
        }
        private function onTxt(e:MouseEvent) {
            var eTarTxt:TextField=e.target as TextField;
            var eTarStr:String=eTarTxt.text;
            for (var i:uint=0; i<clickMc.numChildren; i++) {
                var txt:TextField=clickMc.getChildAt(i) as TextField;
                if (txt.text==eTarStr&&txt.alpha==0) {
                    txt.alpha=1
                    eTarTxt.text=""
                    break
                }
            }
        }


    }
}

猜你喜欢

转载自www.cnblogs.com/zqiang0803/p/10844391.html