一、
设置文本框只能输入数字
jTextField3.addKeyListener(new KeyListener(){
public void keyTyped(KeyEvent e) {
int i =(int)e.getKeyChar();
if(i>='0'&&i<='9')
return;
else
e.consume(); //关键,屏蔽掉非法输入,终止默认的行为
}
public void keyPressed(KeyEvent e) { }
public void keyReleased(KeyEvent e) { }
});
|
二、设置回车快捷键
this.getRootPane().setDefaultButton(jButton1);
|
三、键盘管理:KeyboardFocusManager KeyEventPostProcessor
package com.zami.wms.main.test; import java.awt.KeyEventPostProcessor; import java.awt.KeyboardFocusManager; import java.awt.event.KeyEvent; import javax.swing.JFrame; /** * * @author zzh */ public class ESCTest extends JFrame{ /** Creates a new instance of ESCTest */ public static void main(String args[]) { try { ESCTest frame = new ESCTest(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } public ESCTest(){ super(); setTitle("Press ESC TO Exit"); setBounds(100, 100, 500, 375); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); KeyboardFocusManager manager = KeyboardFocusManager .getCurrentKeyboardFocusManager(); manager.addKeyEventPostProcessor(new MyKeyEventPostProcessor()); } } class MyKeyEventPostProcessor implements KeyEventPostProcessor{ public boolean postProcessKeyEvent(KeyEvent event){ if (KeyEvent.VK_ESCAPE == event.getKeyCode()){ System.exit(0); } if (KeyEvent.VK_D == event.getKeyCode()){ System.out.println("ddd"); } return true; } } |
四、无载体键盘