我試圖模擬按鈕單擊事件更改。它運作良好,但是當我在文本框中鍵入一個字符時,它會進行計算。我無法輸入這個詞。我怎樣才能解決這個問題。模擬按鈕單擊事件更改[AS3]
stage.addEventListener(Event.CHANGE, autohesap);
function autohesap(event:Event) {
hesapla_btn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
我試圖模擬按鈕單擊事件更改。它運作良好,但是當我在文本框中鍵入一個字符時,它會進行計算。我無法輸入這個詞。我怎樣才能解決這個問題。模擬按鈕單擊事件更改[AS3]
stage.addEventListener(Event.CHANGE, autohesap);
function autohesap(event:Event) {
hesapla_btn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
TextField
調度每一個它的內容發生變更時(例如輸入一個新的角色)的Event.CHANGE
。當您將Event.CHANGE
收聽者添加到stage
時,stage
將會收到全部類型爲CHANGE
的事件,包括您的TextField
發送的事件。我不確定這是否是您要查找的行爲?
如果是,你「不能輸入單詞」,那麼它看起來像,那是因爲你的autohesap
正在改變stage.focus
- 當你在TextField
點擊它來寫,stage.focus
設置爲TextField
問題 - 如果您手動設置stage.focus = null
,那麼TextField
將被取消選擇,您將無法再輸入,直到再次單擊。
創建一個容器對象來將所有'可更改'對象保存爲子對象。但將文本框放在容器的「家庭」之外。您仍然可以在任何地方放置文本字段,但其事件將繞過容器,只會在本身或其子代中「聽到」事件。
完美。你找到我的錯誤,而不看我的代碼:) –