AS3:(0,0)图形不在左上角开始

时间:2014-01-09 20:26:22

标签: actionscript-3 flash

我是AS3的新手,我在浏览器中使用Shape和Sprite对象并使用一些动画。我注意到的第一件事是,如果我的浏览器宽度大于725像素,则(0,0)处的对象从右侧开始,但保持在顶部边缘。如果浏览器的宽度小于约725像素,则(0,0)处的对象会粘在左边缘,但会向下移动并变小。

这里发生了什么?我的理解是'drawRect(0,0,50,50)'应该在左上角形成一个50px乘50px的正方形。我改变了舞台的颜色,所以我可以确保它没有移动,但它不是......形状在舞台内移动。

以下是一个例子:

package
{
import flash.display.Shape;
import flash.display.Sprite;

public class Game extends Sprite
{
    public function Game()
    {
        stage.color = 0xAAAAAA;

        var shape:Shape = new Shape();
        shape.graphics.beginFill(0x000000,1);
        shape.graphics.drawRect(0,0,50,50);
        shape.graphics.endFill();

        stage.addChild(shape);
    }
}
}

非常感谢任何帮助!我只是想了解发生了什么以及如何“锁定”页面,以便相对于舞台以恒定像素测量坐标和大小。

我抓住了一个.GIF,只是为了确保你知道我在说什么......对不起,由于某种原因,这是快速动作,但它应该明白:http://s17.postimg.org/m7j02pswf/Cropper_Capture_5.gif

1 个答案:

答案 0 :(得分:2)

尝试添加以下两行:

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.color = 0xAAAAAA;