【问题标题】:children movieclips doesn't show its width and height according to parent movieclip子动画剪辑不根据父动画剪辑显示其宽度和高度
【发布时间】:2011-07-19 10:15:53
【问题描述】:

我在 Flash 中放置了 3 个名为 mcParent、mcChild1、mcChild2 和 1 个文本框的影片剪辑。孩子是父母影片剪辑的孩子。 child1 和 child2 的大小均为 300,而父影片剪辑为 600 像素,文本框放置在 child2 影片剪辑中。我已经让闪光灯根据屏幕区域自动调整大小。一切正常,但在调整大小后,它会调整父级和所有子级以及文本框的大小,这是正确的。问题在于 mcChild2 上文本框的正确放置。我已经看到,在调整大小之后,mcParent 宽度和 scalex 都发生了变化,但是子剪辑即使被拉伸也不会改变它的大小,但是由于我无法获得放置文本框的确切位置,所以没有更新大小.

如果能在调整大小后获得子剪辑的确切大小,我们将不胜感激。

谢谢。

【问题讨论】:

  • 你是如何调整你的 flashmovie 大小的?你是缩放整个东西还是真的调整它的大小?
  • 我根据舞台调整了它的大小。将其缩放到 NO_SCALE 并与 top_left 对齐。然后检测到 resize 事件并放置代码以相应地调整内容大小以填充屏幕。

标签: flash actionscript-3 parent


【解决方案1】:

在这种情况下,您必须使用父动画剪辑的大小。

另一个不太干净的替代方法是将一个小的(1x1 正方形)影片剪辑放在父级中,作为文本字段应放置位置的指示符。然后,在舞台调整大小时,您必须使用localToGlobal 来了解尺寸更改后那个小 mc 的位置。。使用该信息来定位文本字段。

【讨论】:

  • 我应该在哪个movieclip上调用localToGlobal?我在 mcParent 中有 mcChild1,想知道 mcChild1 的 x,y 坐标。我应该像这样使用 mcParent.localToGlobal(new Point(mcChild1.x,mcChild1.y)) 还是应该像这样使用 mcChild1.localToGlobal(new Point(mcChild1.x, mcChild1.y))?
  • 我搞定了。我使用 mcParent.localToGlobal(new Point(mcParent.mcChild1.x,mcParent.mcChild1.y)) 根据放置 mcParent 的舞台坐标来获取 mcChild1 的本地点。非常感谢马克拉姆。 :)
猜你喜欢
  • 1970-01-01
  • 2015-12-25
  • 1970-01-01
  • 2019-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-23
相关资源
最近更新 更多