日历

« 2008-08-30  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

我的好友

统计信息

  • 访问量: 577
  • 日志数: 4
  • flash数: 1
  • 图片数: 2
  • 建立时间: 2007-07-24
  • 更新时间: 2008-08-18

RSS订阅

我的最新日志

  • 鼠标事件2

    2008-8-18

    //这是一个用鼠标画线的文档类
    package {
        import flash.display.Sprite;//导入外部类(Sprite是显示列表类)
        import flash.events.MouseEvent;//导入外部类(MouseEvent是鼠标事件类)
        public class ExampleApplicationc extends Sprite {//定义类名继承显示列表类(类名为ExampleApplicationc)
            private var _sprite:Sprite;//定义一个私有参数为显示列表类型(_sprite)
            public function ExampleApplicationc() {//定义类函数
                _sprite=new Sprite  ;//创建一个显示列表类的实例
                addChild(_sprite);//使实例化的参数显示在场景中
                _sprite.graphics.lineStyle(4,0x0000ff,1);//定义线型(graphics适量绘制命令)
                _sprite.graphics.beginFill(0xffff00);//定义填充色
                _sprite.graphics.drawRect(50,50,450,300);//画矩形
                _sprite.graphics.endFill();//结束画图
                _sprite.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDowna);//用_sprite帧听鼠标按下(MOUSE_DOWN)时执行函数(onMouseDowna)
                _sprite.addEventListener(MouseEvent.MOUSE_UP,onMouseUpa);//用_sprite帧听鼠标放开(MOUSE_UP)时执行函数(onMouseUpa)
            }
            private function onMouseDowna(e:MouseEvent):void {//定义一个私有函数(onMouseDowna)(这个函数的作用是当按下鼠标时设置画线的线形及画线的起点和鼠标移动时帧听画线函数onMouseMovea)
                _sprite.graphics.lineStyle(1,0xff0000,1);//定义线型(graphics适量绘制命令)
                _sprite.graphics.moveTo(mouseX,mouseY);//画线的起始点在鼠标的坐标位置
                _sprite.addEventListener(MouseEvent.MOUSE_MOVE,onMouseMovea);//用_sprite帧听鼠标移动时(MOUSE_MOVE)时执行函数(onMouseMovea)
            }
            private function onMouseUpa(e:MouseEvent):void {//定义一个私有函数(onMouseUpa)(这个函数的作用是当鼠标放开时移动鼠标时删除画线函数(onMouseMovea)
                _sprite.removeEventListener(MouseEvent.MOUSE_MOVE,onMouseMovea,false);//鼠标放开时移动鼠标帧听删除画线函数(onMouseMovea)
            }
            private function onMouseMovea(e:MouseEvent):void {//画线函数
                _sprite.graphics.lineTo(mouseX,mouseY);//设置画线动点随鼠标坐标移动
            }
        }
    }
  • 学习鼠标事件

    2008-8-01

    今天学习了鼠标事件.将帮助中的例子写了一下注解.对学习AS3还是很有帮助的.发上来相互学习一下吧.

    这个是画一个正方形并拖动它的类

    package {
     import flash.display.Sprite;//是基本显示列表构造块类
     import flash.events.*;//无类型类

     public class package {
        import flash.display.Sprite;//是基本显示列表构造块类
        public class MouseEventExample extends Sprite {//类名MouseEventExample是Sprite类的子类extends关健字
            public function MouseEventExample() {//构造函数
                var child:ChildSprite = new ChildSprite();//调用下的面类ChildSprite
                addChild(child);//使图显示
            }
        }
    }

    import flash.display.Sprite;//是基本显示列表构造块类
    import flash.events.MouseEvent;//是鼠标事件类

    class ChildSprite extends Sprite {//类名ChildSprite是Sprite类的子类extends关健字
        private var size:uint = 50;//设置参数小正方形的边长
        private var overSize:uint = 60;//设置参数大正方形的边长
        private var backgroundColor:uint = 0xFFCC00;//设置参数大正方形的颜色1
        private var overColor:uint = 0xCCFF00;//设置参数大正方形的颜色(三个不同的颜色)2
        private var downColor:uint = 0x00CCFF;//设置参数大正方形的颜色3

        public function ChildSprite() {//构造函数
            draw(size, size, backgroundColor);//画正方形1
            addEventListener(MouseEvent.CLICK, clickHandler);//按下并释放调度
            addEventListener(MouseEvent.DOUBLE_CLICK, doubleClickHandler);//快速连续按下两次并释放指针设备的主按钮时调度
            addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);//按下指针设备按钮时调度
            addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);//移开时调度
            addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);//移上时调度
            addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);//释放指针设备按钮时调度
            addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler);//鼠标滚轮在实例上滚动时调度
        }

        private function draw(w:uint, h:uint, bgColor:uint):void {//画图函数
            graphics.clear();//清除绘制到此 Graphics 对象的图形,并重置填充和线条样式设置。
            graphics.beginFill(bgColor);//填充色
            graphics.drawRect(0, 0, w, h);//画图函数
            graphics.endFill();
        }

        private function clickHandler(event:MouseEvent):void {//检验按下并释放调度动作
            trace("clickHandler");
        }

        private function doubleClickHandler(event:MouseEvent):void {//检验快速连续按下两次并释放指针设备的主按钮时调度动作
            trace("doubleClickHandler");
        }

        private function mouseDownHandler(event:MouseEvent):void {////检验按下指针设备按钮时调度动作
            trace("mouseDownHandler");
            draw(overSize, overSize, downColor);//画正方形3

            var sprite:Sprite = Sprite(event.target);//定义一个显示列表的构造块(相当于以前的MC)
            sprite.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);//为这个构造块添加侦听事件当鼠标移动时执行函数mouseMoveHandler()
            sprite.startDrag();//拖动指定的 Sprite
        }

        private function mouseMoveHandler(event:MouseEvent):void {//时时更新显示,如果已修改显示列表,则此事件处理完成后将指示 Flash Player 呈现结果。
            trace("mouseMoveHandler");
            event.updateAfterEvent();//如果已修改显示列表,则此事件处理完成后将指示 Flash Player 呈现结果。
        }

        private function mouseOutHandler(event:MouseEvent):void {////检验移开时调度动作
            trace("mouseOutHandler");
            draw(size, size, backgroundColor);//画正方形1
        }

        private function mouseOverHandler(event:MouseEvent):void {//检验移上时调度动作
            trace("mouseOverHandler");
            draw(overSize, overSize, overColor);//画正方形2
        }

        private function mouseWheelHandler(event:MouseEvent):void {//检验鼠标滚轮在实例上滚动时调度动作
            trace("mouseWheelHandler delta: " + event.delta);
        }

        private function mouseUpHandler(event:MouseEvent):void {//检验释放指针设备按钮时调度动作
            trace("mouseUpHandler");
            var sprite:Sprite = Sprite(event.target);//定义一个显示列表的构造块(相当于以前的MC)
           // sprite.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);//为这个构造块添加侦听事件当鼠标移动时执行函数mouseMoveHandler()
            sprite.stopDrag();//停止拖动
            draw(overSize, overSize, overColor);//画正文形2
        }
    }
     extends Sprite {//类名SpriteExample是Sprite类的子类extends关健字
      private var size:uint    = 100;//设置参数正方形的边长
      private var bgColor:uint = 0xFFCC00;//设置参数正方形填充色
      private var liColor:uint = 0xff0000;//设置参数正方形边的颜色
      public function SpriteExample() {//构造函数
       init();
      }
      private function init():void {//执行函数
       var child:Sprite = new Sprite();//定义一个显示列表的构造块(相当于以前的MC)
       child.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);//为这个构造块添加侦听事件当鼠标按下时执行函数mouseDownHandler()
       child.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);//为这个构造块添加侦听事件当鼠标放开时执行函数mouseUpHandler()
       drawa(child);//执行画图函数
       addChild(child);//使图显示
      }

      private function mouseDownHandler(event1:MouseEvent):void {//mouseDownHandler()按下鼠标拖动MC
       trace("mouseDownHandler1");
       var sprite1:Sprite = Sprite(event1.target);//定义一个显示列表的构造块(相当于以前的MC)
       sprite1.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);//为这个构造块添加侦听事件当鼠标移动时执行函数mouseMoveHandler()
       sprite1.startDrag();//拖动指定的 Sprite
      }

      private function mouseUpHandler(event2:MouseEvent):void {//mouseDownHandler()放开鼠标停止拖动MC
       trace("mouseUpHandler2");
       var sprite2:Sprite = Sprite(event2.target);//定义一个显示列表的构造块(相当于以前的MC)
       //sprite2.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);//为这个构造块添加侦听事件当鼠标移动时执行函数mouseMoveHandler()
       sprite2.stopDrag();//停止拖动指定的 Sprite
      }

      private function mouseMoveHandler(event3:MouseEvent):void {//时时更新显示,如果已修改显示列表,则此事件处理完成后将指示 Flash Player 呈现结果。
       trace("mouseMoveHandler3");
       event3.updateAfterEvent();//如果已修改显示列表,则此事件处理完成后将指示 Flash Player 呈现结果。
      }

      private function drawa(sprite3:Sprite):void {//drawa画图函数
       sprite3.graphics.beginFill(bgColor);//设置填充色
       sprite3.graphics.lineStyle(1,liColor);//设置线条色
       sprite3.graphics.drawRect(0, 0, size, size);//画图drawRect()画图专用函数
       sprite3.graphics.endFill();
      }
     }
    }

    这个也是画正方形并拖动它,正方形的颜色发生改变.说明了鼠标的七个事件的类

    package {
        import flash.display.Sprite;//是基本显示列表构造块类
        public class MouseEventExample extends Sprite {//类名MouseEventExample是Sprite类的子类extends关健字
            public function MouseEventExample() {//构造函数
                var child:ChildSprite = new ChildSprite();//调用下的面类ChildSprite
                addChild(child);//使图显示
            }
        }
    }

    import flash.display.Sprite;//是基本显示列表构造块类
    import flash.events.MouseEvent;//是鼠标事件类

    class ChildSprite extends Sprite {//类名ChildSprite是Sprite类的子类extends关健字
        private var size:uint = 50;//设置参数小正方形的边长
        private var overSize:uint = 60;//设置参数大正方形的边长
        private var backgroundColor:uint = 0xFFCC00;//设置参数大正方形的颜色1
        private var overColor:uint = 0xCCFF00;//设置参数大正方形的颜色(三个不同的颜色)2
        private var downColor:uint = 0x00CCFF;//设置参数大正方形的颜色3

        public function ChildSprite() {//构造函数
            draw(size, size, backgroundColor);//画正方形1
            addEventListener(MouseEvent.CLICK, clickHandler);//按下并释放调度
            addEventListener(MouseEvent.DOUBLE_CLICK, doubleClickHandler);//快速连续按下两次并释放指针设备的主按钮时调度
            addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);//按下指针设备按钮时调度
            addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);//移开时调度
            addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);//移上时调度
            addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);//释放指针设备按钮时调度
            addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler);//鼠标滚轮在实例上滚动时调度
        }

        private function draw(w:uint, h:uint, bgColor:uint):void {//画图函数
            graphics.clear();//清除绘制到此 Graphics 对象的图形,并重置填充和线条样式设置。
            graphics.beginFill(bgColor);//填充色
            graphics.drawRect(0, 0, w, h);//画图函数
            graphics.endFill();
        }

        private function clickHandler(event:MouseEvent):void {//检验按下并释放调度动作
            trace("clickHandler");
        }

        private function doubleClickHandler(event:MouseEvent):void {//检验快速连续按下两次并释放指针设备的主按钮时调度动作
            trace("doubleClickHandler");
        }

        private function mouseDownHandler(event:MouseEvent):void {////检验按下指针设备按钮时调度动作
            trace("mouseDownHandler");
            draw(overSize, overSize, downColor);//画正方形3

            var sprite:Sprite = Sprite(event.target);//定义一个显示列表的构造块(相当于以前的MC)
            sprite.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);//为这个构造块添加侦听事件当鼠标移动时执行函数mouseMoveHandler()
            sprite.startDrag();//拖动指定的 Sprite
        }

        private function mouseMoveHandler(event:MouseEvent):void {//时时更新显示,如果已修改显示列表,则此事件处理完成后将指示 Flash Player 呈现结果。
            trace("mouseMoveHandler");
            event.updateAfterEvent();//如果已修改显示列表,则此事件处理完成后将指示 Flash Player 呈现结果。
        }

        private function mouseOutHandler(event:MouseEvent):void {////检验移开时调度动作
            trace("mouseOutHandler");
            draw(size, size, backgroundColor);//画正方形1
        }

        private function mouseOverHandler(event:MouseEvent):void {//检验移上时调度动作
            trace("mouseOverHandler");
            draw(overSize, overSize, overColor);//画正方形2
        }

        private function mouseWheelHandler(event:MouseEvent):void {//检验鼠标滚轮在实例上滚动时调度动作
            trace("mouseWheelHandler delta: " + event.delta);
        }

        private function mouseUpHandler(event:MouseEvent):void {//检验释放指针设备按钮时调度动作
            trace("mouseUpHandler");
            var sprite:Sprite = Sprite(event.target);//定义一个显示列表的构造块(相当于以前的MC)
           // sprite.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);//为这个构造块添加侦听事件当鼠标移动时执行函数mouseMoveHandler()
            sprite.stopDrag();//停止拖动
            draw(overSize, overSize, overColor);//画正文形2
        }
    }

    应用方法只需要把类名复制到文档类中就可以了

  • 今天开始学习AS3

    2008-7-31

    学习AS3真有点难呀,我能不能坚特很难说呀,主要还是了解一下吧.在别人类的基础上进行加工学习吧.

我的主题

我的最新图片

Open Toolbar