Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 缩放父对象后,如何获取movieClip的全局宽度和高度?_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 缩放父对象后,如何获取movieClip的全局宽度和高度?

Actionscript 3 缩放父对象后,如何获取movieClip的全局宽度和高度?,actionscript-3,flash,Actionscript 3,Flash,我做一些已经开发的项目 myMovieClip已被缩放,并嵌套到许多MovieClip中,这些MovieClip可能已自行缩放 当我追踪他的宽度和高度时,它没有给我正确的宽度和大小: 如何获得绝对宽度和高度? (屏幕上显示的宽度和高度) (一种localToGlobalWidth函数) 关于你知道它被缩放了多少次,以及被缩放了多少次吗?在这种情况下,您可以跟踪宽度*缩放,例如: mc1的宽度为100,并按2: mc1.scaleX = 2; trace (mc1.width*2); 额外信息:

我做一些已经开发的项目

myMovieClip已被缩放,并嵌套到许多MovieClip中,这些MovieClip可能已自行缩放

当我追踪他的宽度和高度时,它没有给我正确的宽度和大小: 如何获得绝对宽度和高度? (屏幕上显示的宽度和高度)

(一种localToGlobalWidth函数)


关于

你知道它被缩放了多少次,以及被缩放了多少次吗?在这种情况下,您可以跟踪宽度*缩放,例如:

mc1的宽度为100,并按2:

mc1.scaleX = 2;
trace (mc1.width*2);
额外信息:如果它被变量缩放,请用变量名替换2。 通过使用一个变量来堆积缩放比例,此方法应该可以工作,即使它被缩放多次:

var scaler1:int = 2;
var scaler2:int = 7;
var scalePiler:int = scaler1*scaler2;
mc1.scaleX = scalePiler;
trace (mc1.width*scalePiler);

希望我帮助并涵盖了所有的可能性,祝你的节目好运^^

你知道它被缩放了多少次,以及被缩放了多少次吗?在这种情况下,您可以跟踪宽度*缩放,例如:

mc1的宽度为100,并按2:

mc1.scaleX = 2;
trace (mc1.width*2);
额外信息:如果它被变量缩放,请用变量名替换2。 通过使用一个变量来堆积缩放比例,此方法应该可以工作,即使它被缩放多次:

var scaler1:int = 2;
var scaler2:int = 7;
var scalePiler:int = scaler1*scaler2;
mc1.scaleX = scalePiler;
trace (mc1.width*scalePiler);

希望我帮助并涵盖了所有的可能性,祝你的节目好运^^

可以使用显示对象的
getBounds
方法来获取相对于作为参数传递给该方法的任何显示对象的边界(实际宽度/高度和位置)。()


返回矩形的
width
height
属性就是您要使用的属性。

您可以使用显示对象的
getBounds
方法来获取相对于作为参数传递给该方法的任何显示对象的边界(实际宽度/高度和位置)。()


返回矩形的
width
height
属性就是您要使用的属性。

您的代码实际上不会提供所需的输出。除非重写,否则显示对象的
.width
将反映其自身的缩放值。示例:如果
mc1
本机宽度为100px,并且您已将其缩放为2,
trace(mc1.width)
将输出
200
-
trace(mc1.width*mc1.scaleX)
将输出
400
。根据我从问题中了解的情况,缩放显示对象将无法正确输出新的缩放宽度,但是将输出原始宽度,因此,在您的示例中:
trace(mc1.width)
将输出100,而不是200,因此下一个输出将是200,即所需的输出。对不起,如果我错了,因为我自己没有试过,但这正是问题所说的:我不是故意粗鲁或傲慢,但你错了。请试一试,找出答案。问题是对象的父对象是缩放的,当您跟踪
mc1时(根据设计)。宽度
is不包括任何父对象缩放(只包括它自己的缩放)啊,对不起,我错过了父-子部分,我认为这是一个一般性问题。我的坏消息:我们的代码实际上不会提供所需的输出。除非重写,否则显示对象的
.width
将反映其自身的缩放值。示例:如果
mc1
本机宽度为100px,并且您已将其缩放为2,
trace(mc1.width)
将输出
200
-
trace(mc1.width*mc1.scaleX)
将输出
400
。根据我从问题中了解的情况,缩放显示对象将无法正确输出新的缩放宽度,但是将输出原始宽度,因此,在您的示例中:
trace(mc1.width)
将输出100,而不是200,因此下一个输出将是200,即所需的输出。对不起,如果我错了,因为我自己没有试过,但这正是问题所说的:我不是故意粗鲁或傲慢,但你错了。请试一试,找出答案。问题是对象的父对象是缩放的,当您跟踪
mc1时(根据设计)。宽度
is不包括任何父对象缩放(只包括它自己的缩放)啊,对不起,我错过了父-子部分,我认为这是一个一般性问题。我的缺点:请接受答案,或者创建您自己的答案(并接受它作为答案),以便将此问题分类为已回答。请接受答案,或者创建您自己的答案(并接受它作为答案),以便将此问题分类为已回答。