关于java 键盘监听 keyListener ,是我每按一次键,都会调用一次这个类吗?

比如我再类Game里写keyListener在类Window里new一个Gameg=newGame;那我再window里每按一次键盘,都会重新把类Game的属性调用一次吗... 比如我再 类Game 里写keyListener
在类Window 里 new一个 Game g=new Game;
那我再window 里 每按一次键盘 ,都会重新把 类Game的属性调用一次吗
能讲一下这个GamePanel的执行顺序是怎么样的,我在window创建 GamePanel gamePanel对象时,不是应该会首先默认调用这个构造方法里的repaint()吗?哪下面的那个画笔方法public void paint(Graphics g)是在什么时候被执行?
还有这个键盘监听,我按下 一个方向键时, 坦克移动了, 那是先执行public void keyPressed(KeyEvent e) { 这个方法,在执行paint方法吗,这个时候构造方法里的
this.repaint()又有什么用
展开
 我来答
GTA小鸡
高粉答主

2018-03-09 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.6万
采纳率:78%
帮助的人:1.3亿
展开全部
只有当前获得焦点的组件能够响应KeyEvent(前提是该组件已经添加过KeyListener)。每个KeyListener都有三种状态KeyPressed、KeyReleased和KeyTyped表示键被按下,键回弹和输入了某个键。当键盘上某个键被按下时,即产生一个KeyEvent,这个事件能够被当前拥有焦点的那个组件捕获到,并依次通知所有注册到该组件的KeyListener去执行它们预定义的响应事件。
追问
太专业了 看不太懂
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式