我是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
答案 0 :(得分:2)
尝试添加以下两行:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.color = 0xAAAAAA;