0

我的一个组件如下所示:

<mx:Canvas id="grid" width="100%" height="100%"></mx:Canvas>

在creationComplete上,我加载了一些我想根据画布尺寸缩放和定位的精灵以创建自定义网格布局,但是当我访问“网格”的尺寸时,我得到0和0。有什么办法可以得到没有分配绝对值的尺寸?

4

4 回答 4

0

我的理解是,除非 Canvas 包含一个或多个 DisplayObject 子项,否则它将始终将其宽度和高度属性报告为 0,而不管您可能对其应用的百分比大小。

您始终可以向 Canvas 添加一个空的虚拟 DisplayObject,但这不会很优雅。根据您计划实施自定义网格的方式,您可能需要重新考虑设计......

于 2009-04-10T21:44:17.860 回答
0

您是否尝试将 Canvas 的宽度和高度绑定到其父级?如果它是 100%,那么它将具有与其父级相同的大小,并且您可以根据 Canvas 的父级容器绑定或调整 Sprite(UIComponent)的大小。

于 2009-04-11T04:54:04.520 回答
0

我目前无法检查,但您可以访问测量高度和测量宽度吗?

于 2009-04-10T17:48:15.960 回答
0

它是否可能已创建但尚未显示(例如可见)?由于最终的大小和形状是派生的,直到实际需要绘制的东西才会发生。宽度和高度被记录为实际使用的值 - 当它们改变时甚至有事件。

最坏的情况,尝试在画布 Resize 事件中捕获它。

于 2009-04-10T22:20:33.717 回答