Actionscript 3 如何使电影唇膏粘到Flash播放器边缘?

Actionscript 3 如何使电影唇膏粘到Flash播放器边缘?,actionscript-3,stage,Actionscript 3,Stage,我已经开始用ActionScript编写代码,并尝试编写这个程序。它将一个形状绘制到舞台中,您可以使用箭头键移动它。我添加了一个“边缘粘贴”功能,将形状的一半粘贴到边缘。这是我的密码: function freemove(event:KeyboardEvent):void { switch (event.keyCode) { case Keyboard.UP: { testing.y -= 5; if

我已经开始用ActionScript编写代码,并尝试编写这个程序。它将一个形状绘制到舞台中,您可以使用箭头键移动它。我添加了一个“边缘粘贴”功能,将形状的一半粘贴到边缘。这是我的密码:

function freemove(event:KeyboardEvent):void
{
    switch (event.keyCode)
    {
        case Keyboard.UP:
        {
            testing.y -= 5;
            if(testing.y < stage.width)
            {
                testing.y = 0;
                }
            break;
        }
        case Keyboard.DOWN:
        {
            testing.y += 5;
            // FOR BOTTOM EDGE.
            break;
        }
        case Keyboard.LEFT:
        {
            testing.x -= 5;
            if(testing.x < stage.height)
            {
                testing.x = 0;
                }
            break;
        }
        case Keyboard.RIGHT:
        {
            testing.x += 5;
            // FOR RIGHT EDGE.
            break;
        }
        }

    }
功能自由移动(事件:键盘事件):无效
{
开关(event.keyCode)
{
case Keyboard.UP:
{
测试y-=5;
if(测试y<阶段宽度)
{
测试y=0;
}
打破
}
case Keyboard.DOWN:
{
测试:y+=5;
//用于底部边缘。
打破
}
case键盘。左:
{
测试x-=5;
if(测试x<阶段高度)
{
测试x=0;
}
打破
}
case.RIGHT:
{
测试x+=5;
//对于右边缘。
打破
}
}
}
问题是:它只适用于左边缘和上边缘。我如何才能使其适用于底部和右侧边缘?谢谢!=)


此外,您可能会混淆左右处理程序中的宽度和高度(为什么将
y
与宽度进行比较,将
x
与高度进行比较?

为什么要将y轴与宽度进行比较?这就是问题的根源。这也让我和我展示代码的人感到困惑。这也让我感到不安。在运行时,它在打开该配置的情况下按预期工作。似乎我在做奇怪的代码。。。
// FOR BOTTOM EDGE.
if (shape.y + shape.height > stage.stageHeight)

// FOR RIGHT EDGE.
if (shape.x + shape.width > stage.stageWidth)