我已經搜索了KeyPressed
和KeyTyped
事件之間的差異,但我仍然不清楚這一點。我發現的一件事是Keypressed首先被觸發,而不是KeyTyped。 請確定這些觸發時,請澄清一下。哪個適合用於哪個目的? 在此先感謝KeyPressed和KeyTyped Confusion
0
A
回答
9
keyPressed
,只要按任何鍵時被觸發。當按下可以轉換爲unicode字符的按鍵時,會觸發keyTyped
。例如,如果換檔鍵處於關閉狀態,則按「a」會告訴您輸入大寫字母A,而keyPressed
只會得到「a」鍵,不帶大寫或小寫字母。您不能從keyPressed
撥打event.getKeyChar()
,因爲沒有與事件關聯的關鍵字符。角色只來自keyTyped
。
其基本思想是keyTyped
用於查找輸入的字符,keyPressed
用於獲取原始按鍵。
-1
KeyPressed
發生鍵關閉時發生。當密鑰關閉然後備份時會發生KeyTyped
。我不確定是否需要「快速連續」,如果是,「快速」的速度有多快。
編輯:KeyTyped
實際上是從鍵盤發送unicode字符。通常情況下,關鍵的行爲是它下降,然後快速連續備份。
相關問題
- 1. 使用KeyEvent(KeyPressed,KeyTyped,...)附加一個字符到JTextArea
- 2. 在畫布上的KeyListener:keyReleased觸發,但沒有keyPressed或keyTyped
- 3. KeyListener和keyPressed
- 4. JVM:Bytecode Confusion和JIT
- 5. 的MouseListener和的keyPressed
- 6. CoreData Confusion
- 7. interning confusion
- 8. lastIndexOf Confusion
- 9. UINavigationController:navigation confusion
- 10. #include confusion
- 11. TreeView Confusion
- 12. setTimeout confusion
- 13. Python by-object confusion
- 14. Hibernate code..some confusion
- 15. Synchronizaton Object Lock Confusion
- 16. Files:bash_profile zhrc confusion
- 17. OrientDB Edge Confusion
- 18. C#else if confusion
- 19. VKontakte API Confusion
- 20. Android Manifest Confusion
- 21. android oncreate confusion
- 22. CONFUSION MATRIX,R,
- 23. Java Lines Confusion
- 24. Modelchoicefield Queryset Confusion
- 25. React Redux Confusion
- 26. mysql group by confusion
- 27. Procedural Island Generation confusion
- 28. KeyPressed事件
- 29. Backbone View El confusion
- 30. Text Property Confusion
這是使用Swing還是AWT組件?對於Swing,通常使用基於AWT的較低級別KeyListener的鍵綁定。有關如何使用它們的詳細信息,請參見[如何使用鍵綁定](http://docs.oracle.com/javase/tutorial/uiswing/misc/keybinding.html)。 –