如何将Focus_out事件应用于不仅仅是选定的组件
|
我正在根据这篇文章使用代码。
它使用focus_out事件来检测是否存在需要提交的更改。但是,我注意到只有在您从文本字段中但在组件内部单击时,才调用FOCUS_OUT事件。有什么方法可以侦听组件内部的单击?
addEventListener(FocusEvent.FOCUS_OUT, onFocusOut);
protected function onFocusOut(event:FocusEvent):void
{
_updatedText = text;
if(_updatedText != _originalText){
dispatchEvent(new Event(Event.CHANGE));
}
setEditable(false);
}
没有找到相关结果
已邀请:
2 个回复
到街客核
只需确保在从舞台上删除组件之前(假设它是动态添加的)就清理并删除了事件侦听器。这将阻止您堆积一堆事件侦听器。 另外,如果您只想找出有人在特定组件之外单击的时间,则可以执行以下操作:
同样,如果动态添加/删除了该组件,请确保清除所有事件侦听器。 希望这可以帮助! 编辑: 如果要清理eventListener,请执行以下操作(在组件中触发remove事件时调用):
显然用您最终使用的事件侦听器代替(焦点或鼠标)。
臀夯脖锑