• flash本身失去焦点的事件:Event.DEACTIVATE


    代码
    // initialize arrow variables
    var leftArrow:Boolean = false;
    var rightArrow:Boolean 
    = false;
    var upArrow:Boolean 
    = false;
    var downArrow:Boolean 
    = false;

    var mascot:Mascot 
    = new Mascot;
    mascot.x 
    = 200;
    mascot.y 
    = 200;
    addChild(mascot);

    stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressedDown);
    stage.addEventListener(KeyboardEvent.KEY_UP, keyPressedUp);
    stage.addEventListener(Event.ENTER_FRAME, moveMascot);
    stage.addEventListener(Event.DEACTIVATE, missingStage);

    // set arrow variables to true
    function keyPressedDown(event:KeyboardEvent)
    {
        
    if (event.keyCode == 37)
        {
            leftArrow 
    = true;
        }
        
    else if (event.keyCode == 39)
        {
            rightArrow 
    = true;
        }
        
    else if (event.keyCode == 38)
        {
            upArrow 
    = true;
        }
        
    else if (event.keyCode == 40)
        {
            downArrow 
    = true;
        }
    }

    // set arrow variables to false
    function keyPressedUp(event:KeyboardEvent)
    {
        
    if (event.keyCode == 37)
        {
            leftArrow 
    = false;
        }
        
    else if (event.keyCode == 39)
        {
            rightArrow 
    = false;
        }
        
    else if (event.keyCode == 38)
        {
            upArrow 
    = false;
        }
        
    else if (event.keyCode == 40)
        {
            downArrow 
    = false;
        }
    }

    // set arrow variables to false
    function missingStage(e:Event)
    {

        leftArrow 
    = false;

        rightArrow 
    = false;

        upArrow 
    = false;

        downArrow 
    = false;

    }

    // move every frame
    function moveMascot(event:Event)
    {
        var speed:Number 
    = 5;
        
    if (leftArrow)
        {
            mascot.x 
    -= speed;
        }
        
    if (rightArrow)
        {
            mascot.x 
    += speed;
        }
        
    if (upArrow)
        {
            mascot.y 
    -= speed;
        }
        
    if (downArrow)
        {
            mascot.y 
    += speed;
        }
    }
  • 相关阅读:
    TestCafe 快速上手(一)
    Github Page & Jekyll 搭建博客
    SQL注入学习笔记
    DVWA 渗透测试(SQL)平台搭建 XAMPP + Windows
    JavaScript小技巧
    react中引入css的方式有哪几种?区别?
    TypeScript 中接口的理解?应用场景?
    TypeScript 中枚举类型的理解?应用场景?
    Typescript 的数据类型有哪些?
    TypeScript 的理解?与 JavaScript 的区别?
  • 原文地址:https://www.cnblogs.com/sevenyuan/p/1615455.html
Copyright © 2020-2023  润新知