在Flash IDE中,我创建了一个Button。它有一个向上,向上,向下和命中的框架。
在" over"框架上出现一个工具提示,它是按钮的一部分。
工具提示中有两个文本字段(经典文本)。一个是静态的,包含按钮的功能描述,另一个是动态的,并显示"动作点"用户必须支付的费用才能使用按钮。
要更改动态文本字段的值,因为它位于不同的框架上而无法正常处理,我使用以下代码:
var t_Container:DisplayObjectContainer = a_SimpleButton.overState as DisplayObjectContainer;
for( var i:uint = 0; i < t_Container.numChildren; i++ )
{
if ( t_Container.getChildAt( i ) is TextField )
{
if ( ( t_Container.getChildAt( i ) as TextField ).type == "dynamic" ) { return t_Container.getChildAt( i ) as TextField; }
}
}
基本上我循环遍历所有孩子,直到找到动态文本字段。
我有多个这样的按钮。对于大多数人来说,它工作得很好。返回不会触发静态文本。但是对于少数几个,返回会触发,断点显示将Flash IDE定义为静态文本字段实际上是运行时的动态文本字段。
知道如何发生这种情况吗?