我正在尝试在as3中编写一个下拉控件,点击控件的'top-text'(一个Sprite)会导致出现一个框(另一个Sprite)。该框包含可以选择的所有项目的列表。当选择'item1'时,框关闭,item1-text成为控件的顶文。等等。
我还希望当控件失去焦点时,即当用户点击flash影片上的任何其他位置时,该框会自动关闭。为此,我在FocusEvent.FOCUS_OUT的框中添加了一个事件监听器。
问题是,我希望根据FocusEvent的relatedObject进行不同的处理。更确切地说,我想做的不仅仅是关闭特定情况,其中relatedObject是下拉控件本身的子代。如果没有,请关闭它。
我的问题是,无论什么获得焦点,relatedObject属性总是即将出现null。此外,isRelatedObjectInaccessible属性始终为false,因此(根据文档)它不是与安全相关的问题。
有什么想法吗?
答案 0 :(得分:0)
尝试使用flash.events.MouseEvent.MOUSEDOWN而不是FOCUS OUT。在控制下的剪辑上处理它。
答案 1 :(得分:0)
原来这种行为是由作为我正在处理的项目的一部分添加到舞台的Doomsday Console引起的。删除它解决了这个问题。