zoukankan      html  css  js  c++  java
  • flash cs3 的 *标签申明

    在AS3中引入了标签,新的标签可以和循环体一起使用。例如,现在有两个嵌套的循环体,如果想要在内循环体中break掉外循环,一般使用下面的方法:

    var i:Number;

    var j:Number;

    var exit:Boolean = false;

    for (i=0; i<10; i++) {

        for (j=0; j<10; j++) {

            if (i > 3 && j > 3) {

                exit = true;

                break;

            }

        }

        if (exit) {

            break;

        }

    }

    在引入了新的标签以后,可以使用下面的方法从内循环体中直接break掉外循环体:

    var i:Number;

    var j:Number;

    mainLoop: for (i=0; i<10; i++) {

        for (j=0; j<10; j++) {

            if (i > 3 && j > 3) {

                break mainLoop;

            }

        }

    }

    在第一个循环体上设置了mainLoop的标签,因此在循环体内任何地方使用break mainLoop直接中止外循环。

    *检测鼠标离开Movie的动作

    在以前的AS版本中,你无法做到检测鼠标是否还在Flash Movie上。因此影片不能检测到用户是否在关注着当前的Movie。另外一个问题是,如果使用了自定义的鼠标样式,在鼠标移出Movie后,自定义的鼠标还是继续停留在影片上,而不能正确的显示鼠标当前的位置。

    现在,AS3允许你通过监听stage的mouseLeave行为来捕获鼠标移出Movie的动作。mouseLeave行为在鼠标移出Movie的时候执行。但是现在并没有mouseEnter事件,不过你可以通过使用mouseMove来设置。下面的例子中使用了一个方框来作为自定义的鼠标:

    package {

        import flash.display.Sprite;

        import flash.events.Event;

        import flash.events.MouseEvent;

        import flash.ui.Mouse;

        

        public class Test extends Sprite {

            

            private var cursor:Sprite = new Sprite();

            

            public function Test() {

                cursor.graphics.beginFill(0xFF);

                cursor.graphics.drawRect(0, 0, 25, 25);

                addChild(cursor);

                

                stage.addEventListener(Event.MOUSE_LEAVE, cursorHide);

                stage.addEventListener(MouseEvent.MOUSE_MOVE, cursorFollow);

                Mouse.hide();

            }

            

            public function cursorHide(evt:Event):void {

                cursor.visible = false;

            }

            

            public function cursorFollow(evt:MouseEvent):void {

                if (!cursor.visible) cursor.visible = true;

                cursor.x = stage.mouseX;

                cursor.y = stage.mouseY;

                evt.updateAfterEvent();

            }

        }

    }

    当鼠标离开Movie的时候,鼠标指针将被隐藏。当鼠标再次移动到Movie上的时候,mouseMove会被执行,然后显示鼠标。

  • 相关阅读:
    hdu3746 KMP的next数组应用,求项链首尾项链循环
    hdu4067 费用流(混合欧拉的宽展和延伸)
    hdu4067 费用流(混合欧拉的宽展和延伸)
    hdu1501 记忆化搜索
    hdu1501 记忆化搜索
    hdu1316 大数
    hdu1316 大数
    hdu4411 经典费用里建图
    hdu4411 经典费用里建图
    hdu4768 非常规的二分
  • 原文地址:https://www.cnblogs.com/zhangsir/p/1238802.html
Copyright © 2011-2022 走看看