我在swing应用程序中有一个JTextField,它只能接受数字和逗号。我使用以下代码处理了这个问题。
String lstAllowedCharsForSlotList=new String(new char[]{'1','2','3','4','5','6','7','8','9','0','\b','\t',','});
@Override
public void keyPressed(KeyEvent e) {
if(lstAllowedCharsForSlotList.indexOf(e.getKeyChar())==-1)
e.consume();
}
@Override
public void keyReleased(KeyEvent e) {
if(lstAllowedCharsForSlotList.indexOf(e.getKeyChar())==-1)
e.consume();
}
@Override
public void keyTyped(KeyEvent e) {
if(lstAllowedCharsForSlotList.indexOf(e.getKeyChar())==-1)
e.consume();
}
问题是:
任何人都可以帮助提供更好的解决方案吗?