我读过如何做到这一点,但我在实施方面存在缺陷。我想要一个updateComplete事件运行一次,然后删除监听器。删除监听器
这里的组件:
<mx:ComboBox
id="templatesCombo"
dataProvider="{lendersModel.fileTemplateComposites}"
prompt="Select Template"
width="200"
labelFunction="getTemplateName"
change="onViewTempComboChange(event)"
updateComplete="checkTemplatesLength(event);"/>
这里的处理程序:
private function checkTemplatesLength(event:FlexEvent):void{
if(lendersModel.fileTemplateComposites.length == 1){
this.templatesCombo.selectedIndex = 1;
this.currentFileTemplate = templatesCombo.selectedItem as FileTemplateCompositeDTO;
this.templateActions_bb.updateButtonVisibility(2, true ); // disable delete button
}
var cb:ComboBox = ComboBox(event.currentTarget)
cb.removeEventListener(FlexEvent.UPDATE_COMPLETE, checkTemplatesLength);
}
我缺少什么?我认为这是如何从我在这里阅读的其他帖子做到这一点。
任何提示将不胜感激。
谢谢!
之前和删除事件之后:'跟踪(cb.hasEventListener( 'updateComplete'))',并切换到'cb.removeEventListener( 'updateComplete' ...' –
当我找到它的时候,它说它有监听器,但是对于一些它一直被调用 – fumeng