【问题标题】:Get width of object from library (AS3)从库中获取对象的宽度 (AS3)
【发布时间】:2012-10-22 22:28:33
【问题描述】:

如何在 Actionscript 3 中获取库中的宽度和高度对象?

【问题讨论】:

  • 在运行时还是在设计时?

标签: actionscript-3 object actionscript


【解决方案1】:

要在运行时获取库资源的宽度和高度,您需要创建它的实例,将其添加到阶段,然后查询创建的实例的getRect()getBounds()。如果您现在不需要该实例,只需将其从阶段中移除即可。

var temp:DisplayObject=new YourLibraryAsset();
stage.addChild(temp); 
var r:Rectangle=temp.getRect(stage);
stage.removeChild(temp);

如果当前班级没有进入舞台的权限,这将不起作用。

【讨论】:

    【解决方案2】:

    要在运行时获取库资源的宽度和高度,您需要创建它的一个实例,并获取宽度/高度。 (无需添加到舞台)

    import flash.display.MovieClip;
    
    var symbol:MovieClip = new Symbol1();
    trace(symbol.width, symbol.height);
    

    【讨论】:

    • 我已经尝试过了,但由于某种原因收到了零。唯一的补救办法是让它到达舞台。
    • @Vesper 那是因为除非对象在舞台上,否则不会调用“draw”方法。
    猜你喜欢
    • 2012-12-14
    • 1970-01-01
    • 2011-01-13
    • 1970-01-01
    • 2012-02-18
    • 2012-10-10
    • 1970-01-01
    • 2013-08-18
    相关资源
    最近更新 更多