Java swing 如何实现双击Shift呢?

Java代码  swing实现双击Shift
  1. startTimeField_3.addKeyListener(new KeyListener() {  
  2.             private long lastTimeMillSencond;  
  3.             @Override  
  4.             public void keyTyped(KeyEvent e) {  
  5.             }  
  6.               
  7.             @Override  
  8.             public void keyReleased(KeyEvent e) {  
  9.             }  
  10.               
  11.             @Override  
  12.             public void keyPressed(KeyEvent e) {  
  13.                 if(e.isShiftDown()){  
  14.                     if(lastTimeMillSencond==0){  
  15.                         lastTimeMillSencond=System.currentTimeMillis();  
  16.                     }else{  
  17.                         long currentTime=System.currentTimeMillis();  
  18.                         if(currentTime-lastTimeMillSencond<1000){  
  19.                             System.out.println("双击Shift");  
  20.                             lastTimeMillSencond=0;  
  21.                         }else{  
  22.                             lastTimeMillSencond=System.currentTimeMillis();  
  23.                         }  
  24.                     }  
  25.                 }  
  26.             }  
  27.         });  

 下面的是错误的:
swing实现双击Shift
 

会导致:连续按下Shift 3次,会造成两次双击Shift

相关文章: