AS3 - ComboBox的Dispatch事件“更改”

时间:2011-01-16 06:39:31

标签: flash actionscript-3

我正在使用组合框组件,我想手动调度“更改”事件。这是怎么做到的?

// Dispatches when user changes selection
comboType.addEventListener("change",cbListenerDialogue);

// Does not manually dispatch
comboType.dispatchEvent("change"); 
comboType.dispatchEvent(new Event("change"));

2 个答案:

答案 0 :(得分:5)

用于分派的字符串值必须与Flash中已定义的值匹配。

这应该是诀窍。

comboType.dispatchEvent(new Event(Event.CHANGE, true));

另外:AS3 Textbox Change Event Not Firing

答案 1 :(得分:1)

要清楚,

comboType.dispatchEvent(new Event(Event.CHANGE, true));

有效,因为冒泡设置为“true”。

例如,

comboType.addEventListener("change",cbListenerDialogue);
comboType.dispatchEvent(new Event("change", true));

也会奏效。重要的是非鼠标事件不会传播(气泡),除非设置为true,因为Event.CHANGE和“更改”是相同的。