Java限制键侦听器更新
因此,我在JFrame中添加了一个KeyListener,在JFrame中添加了一个JPanel线程。问题是线程重新绘制的速度比keylistener的通知慢…有没有办法将keylistener限制为每秒4个键(或其他任何键)。您可以在Java限制键侦听器更新,java,swing,keylistener,Java,Swing,Keylistener,因此,我在JFrame中添加了一个KeyListener,在JFrame中添加了一个JPanel线程。问题是线程重新绘制的速度比keylistener的通知慢…有没有办法将keylistener限制为每秒4个键(或其他任何键)。您可以在keylistener中使用计时器,或者只需跟踪上次按下键的时间并将其与当前时间进行比较 这允许您在到达任何逻辑之前提前退出KeyListener。但是,您不能停止触发KeyListener,除非您不断将其删除并在250毫秒后再次添加 另外请注意,在Swing中,
keylistener
中使用计时器,或者只需跟踪上次按下键的时间并将其与当前时间进行比较
这允许您在到达任何逻辑之前提前退出KeyListener
。但是,您不能停止触发KeyListener
,除非您不断将其删除并在250毫秒后再次添加
另外请注意,在Swing中,您通常会使用而不是KeyListener
,尽管它们会有完全相同的问题。KeyListener
取决于操作系统,因此我的第一个想法是不,可能不是……您能否澄清线程重新绘制的时间少于KeyListener部分的更新时间。并非每次调用repait
都会触发repait
。它只会安排一次,但Swing可能会决定将多个重绘调用分组在一起。如果你想做动画,请检查线程重新绘制上的链接,然后休眠250毫秒,但我想知道我是否可以将keylistener与此线程同步。谢谢,我实际上正在制作一个,但希望java真的有这样的功能。似乎工作正常,没有延迟。有没有办法将keylistener限制为每秒4个键(或其他任何键)。
这正是Swing动作(一些如何停止、启动或暂停的方法)的工作,带有Swing定时器