in as3调用stage.width和stage.stageWidth
之间的区别是什么?我在某处读到如果我们在舞台上什么都没有,那么 stage.width的值是0 , 但是当我在舞台上什么都没有但在舞台上动态加载内容时会发生什么?
我试过这个,当我在舞台上动态加载内容然后我有
stage.width=value; // where value is dynamic number
任何人都可以解释这个吗? 感谢。
答案 0 :(得分:5)
根据Adobe Reference for the Stage Class:
stage.width
指示显示对象的宽度(以像素为单位)。宽度是 根据显示对象内容的界限计算。
因此,当您在舞台上添加/删除元素时,此属性会有所不同。
stage.stageWidth
指定舞台的当前宽度(以像素为单位)。
当您调整Flash Player窗口的大小时,此属性会有所不同。
答案 1 :(得分:2)
在800x600 swf中
private function init(e:Event = null):void {
removeEventListener(Event.ADDED_TO_STAGE, init);
Security.allowDomain('*');
var ldr:Loader = new Loader();
addChild(ldr);
trace(stage.width, stage.stageWidth);//outputs 0 800
ldr.contentLoaderInfo.addEventListener(Event.INIT, onLoaded);
ldr.load(new URLRequest('.../760x500.swf'));
}
private function onLoaded(e:Event):void {
trace(stage.width, stage.stageWidth);//outputs 760 800
}
因此stage.width
是内容宽度,stage.stageWidth
是您的swf尺寸
答案 2 :(得分:0)
stage.width
是舞台内容的内容大小,因此它可能是任何内容,具体取决于您在舞台上拥有的内容(如果您添加或删除对象,它将会更改),而stage.stageWidth是在flash设置中设置的大小(舞台大小可以从javascript等外部更改。有一个事件监听器)。
答案 3 :(得分:0)
stage.swidth
它将返回width
上内容的stage
。
stage.stageWidth
它会给你舞台的大小。如果您尝试相对于舞台定位元素