• [AS3]as3画笔实例实现橡皮擦功能源代码


    [AS3]as3画笔实例实现橡皮擦功能源代码

        //主容器 
        var main:Sprite = new Sprite(); 
        main.mouseEnabled = false; 
        addChild(main) 
        //临时容器(所有操作都将先画在临时容器里,再进行"画"或"擦") 
        var mc:Sprite = new Sprite() 
        main.addChild(mc) 
        //保存最终画出来的内容的bitmapdata 
        var content:BitmapData = new BitmapData(550,400,true,0x00FFFFFF); 
        //把content显示出来 
        var show:Bitmap = new Bitmap(content) 
        main.addChildAt(show,0) 
         
        //默认选中画笔 
        var action:Number = 0 
        txt.text = "当前选中:画笔" 
         
         
        mc_move.addEventListener(MouseEvent.MOUSE_DOWN,startDraw) 
        a.addEventListener(MouseEvent.CLICK,changeAction) 
        b.addEventListener(MouseEvent.CLICK,changeAction) 
        function changeAction(e:MouseEvent):void 
        { 
            if(e.target.name == "a") 
            { 
                action = 0 
                txt.text = "当前选中:画笔" 
                mc.visible = true 
            }else 
            { 
                action = 1 
                txt.text = "当前选中:橡皮" 
                mc.visible = false 
            } 
        } 
        function startDraw(e:MouseEvent):void 
        { 
            mc.graphics.lineStyle(20,cp.selectedColor); 
            mc.graphics.moveTo(mouseX,mouseY); 
            mc_move.addEventListener(MouseEvent.MOUSE_MOVE,drawing); 
            stage.addEventListener(MouseEvent.MOUSE_UP,stopDraw); 
        } 
        function stopDraw(e:MouseEvent):void 
        { 
            if(action!=1)content.draw(mc,new Matrix(),new ColorTransform(),BlendMode.NORMAL,new Rectangle(0,0,550,400)) 
            mc.graphics.clear() 
            mc_move.removeEventListener(MouseEvent.MOUSE_MOVE,drawing); 
            stage.removeEventListener(MouseEvent.MOUSE_UP,stopDraw); 
        } 
        function drawing(e:MouseEvent):void 
        { 
            mc.graphics.lineTo(mouseX,mouseY) 
            if(action==1)content.draw(mc,new Matrix(),new ColorTransform(),BlendMode.ERASE) 
            e.updateAfterEvent() 
        } 
    

    [AS3]as3画笔实例实现橡皮擦功能源代码

  • 相关阅读:
    DataGrid
    取整、取小数点位数
    如何跨浏览器使用连续字符的换行
    如何给 legend 标签设定宽度
    25个简洁优美的网站设计
    重新发现HTML表格
    用户研究角度看设计(2):用户为何视若无睹
    lineheight 属性的继承问题
    jQuery技巧总结
    web2.0网站配色方案
  • 原文地址:https://www.cnblogs.com/chenhaib/p/5431525.html
Copyright © 2020-2023  润新知