0

当我将 RadioButton(fl.controls) 添加到舞台时,我遇到了一个奇怪的问题。

这是重现该问题的快速方法:

  1. 创建一个空的影片剪辑
  2. 添加一个 RadioButton 组件
  3. 将组件的宽度设置为小于 100 的值
  4. 跟踪容器宽度

即使舞台上的 RadioButton 实例宽度小于 100,容器宽度也将跟踪 100。

如果我从代码中添加组件,那么如果我在首先添加 RadioButton 后使阶段无效,然后在 Event.RENDER 处理程序中检查容器宽度,则它会起作用。

在 IDE/Authoring 中手动添加 RadioButton 时,此测量错误是否有任何修复?

4

1 回答 1

3

这是因为 Flash 使用缩放比例来在运行时调整对象的大小,而不是使用宽度和高度度量。

所以如果你加载 RadioButton 并缩小它的大小,你实际上是按原始大小的 0.89 进行缩放。

当您运行应用程序时,您的 RadioButton 仍然是 100px 宽,但按原始比例缩小了 0.89。

如果您跟踪调整大小和未调整大小的 RadioButton 的scaleXscaleY属性,您就会明白我的意思。

查看此文档了解更多信息:

http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7df3.html

于 2011-09-06T15:33:56.177 回答