2011-02-02 34 views
2

我有一個textArea,並希望防止用戶輸入時運行某些鍵(如Enter鍵)的默認行爲。但是,KeyboardEvent不可取消,因此preventDefault不起作用。有誰知道如何做到這一點?在Flex 3/Flash中取消鍵盤事件

回答

2

想到我發現了一個非常簡單的解決方法,只是使用可取消的TextInput事件並執行Enter鍵的技巧。此外,TextInput事件不會觸發退格鍵,這不會影響我在這裏要做的事情,但fyi。

+0

你究竟做了什麼?你是否聽過這個事件,檢查按鍵是什麼,如果它的某個鍵沒有做任何事情?如果你在你的代碼中加入了一點點的代碼,那麼這個代碼值得再+1。 – Ryan 2011-02-03 11:45:16

1

像這樣的東西可能工作?我沒有試過這個我的自我壽命。

textArea.addEventListener(TextEvent.TEXT_INPUT,onTextInput); 

private function onTextInput(e:TextEvent):void { 
    if (e.text == '\n') e.preventDefault(); 
}