模拟按钮单击事件更改[AS3]

时间:2014-03-01 22:40:55

标签: actionscript-3

我正在尝试使用事件更改来模拟按钮单击。它工作得很好但是当我在文本框中键入一个字符时,它会计算出来。我不能输入这个词。我该如何解决这个问题。

stage.addEventListener(Event.CHANGE, autohesap);

function autohesap(event:Event) {
hesapla_btn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}

2 个答案:

答案 0 :(得分:0)

TextField每次更改内容时都会调度Event.CHANGE(例如输入新字符)。当您将Event.CHANGE监听器添加到stage时,stage将选择所有类型为CHANGE的事件,包括TextField发送的内容。我不确定这是否是您正在寻找的行为?

如果是,并且您无法输入单词",那么它看起来就像是autohesap正在更改stage.focus - 当您点击时要写入TextFieldstage.focus设置为相关的TextField - 如果您手动设置stage.focus = null,则会取消选择TextField在您再次点击它之前,我们无法再输入任何内容。

答案 1 :(得分:0)

创建一个容器对象,将所有“可更改”对象保存为子对象。但是将文本字段从容器的“家庭”中删除。您仍然可以将文本字段定位在任何位置,但其事件将绕过容器,该容器将仅在其自身或其子项中“听到”事件。