按键事件响映的时间是具体操作系统的事,你可以自己通过程序实现,在KeyListener里搞搞手脚,做些tag时间标记什么的,自己实现个小记时器,或用Timer凑合用用。大概说说。呵呵。

解决方案 »

  1.   

    可以具体写个例子吗?我用线程SLEEP,做停止不行。它会把按键事件存放在存储器里。就算之后不再按,他都会继续运行。烦。
      

  2.   

    可不可以大概地给个代码来看看啊?我JAVA基础不是太好。吴该。
      

  3.   

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    public class KeyTimer
    {
     static JFrame frame=new JFrame();
     static Timer t=new Timer(1000,new ActionListener(){
                     public void actionPerformed(ActionEvent e)
                     {
                       System.out.println("1 second");
                     }
              });
         public static void main(String []args)
         {
              
              frame.setSize(200,100);
              frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              
              frame.addKeyListener(new KeyListener()
              {
                   public void keyPressed(KeyEvent ePress)
                   {
                          t.start();
                    }
                    public void keyReleased(KeyEvent eRelease)
                    {
                       t.stop();
                    }
                    public void keyTyped(KeyEvent eType){}
              } );
              frame.setFocusable(true);
              frame.show();
              
         }
    }
    我没管按的什么键,但意思你应该明白了
    给分,给分
      

  4.   

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;public class KeyTimer
    {
     static JFrame frame=new JFrame();
     static Timer t=new Timer(1000,new ActionListener(){
                     
                     public void actionPerformed(ActionEvent e)
                     {
                       System.out.println("1 second");
                     }
         });
         
         public static void main(String []args)
         {
              
              frame.setSize(200,100);
              frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              
              frame.addKeyListener(new KeyListener()
              {
                   public void keyPressed(KeyEvent ePress)
                   {
                          t.start();
                          System.out.println("1 second");//这里我加的。
                    }
                    public void keyReleased(KeyEvent eRelease)
                    {
                       t.stop();
                       
                    }
                    public void keyTyped(KeyEvent eType){}
              } );
              
              frame.setFocusable(true);
              frame.show();
              
         }
    }
    我是想紧按按键时,一秒就出现一次”1 second“。
    吴该了!答完我,我马上给分。不好意思。