This question already has answers here:
KeyListener, keyPressed versus keyTyped
                                
                                    (4个答案)
                                
                        
                                6年前关闭。
            
                    
我已经搜索了KeyPressedKeyTyped事件之间的区别,但是仍然不清楚。我发现的一件事是Keypressed比KeyTyped首先被触发。
请澄清一下这些触发的确切时间。哪个用途适合用于哪个目的?
提前致谢

最佳答案

只要发生任何按键,就会触发keyPressed。当按下可以转换为Unicode字符的键时,会触发keyTyped。例如,如果按下Shift键,则按“ a”会告诉keyTyped您键入了大写字母A,而keyPressed只会得到“ a”键,没有大写字母或小写字母。您不能从event.getKeyChar()调用keyPressed,因为没有与事件关联的键字符。字符仅来自keyTyped

基本思想是keyTyped用于查找键入的字符,而keyPressed用于获取原始按键。

10-07 15:58