在我的第一个程序上工作。我想出了如何识别不想输入的字符。我想知道如何删除最后输入的字符,以便从用户的角度来看它会出现,因为只能输入数字。
@Override
public void keyPressed(KeyEvent e) {
char keyChar = e.getKeyChar();;
char[] badCharArray = "abcdefghijklmnopqrstuvwxyz-`~!@#$%^&*()[]{}<>_+=|\"':;?/ ".toCharArray();
for (int i = 0; i < badCharArray.length; i++) {
if (badCharArray[i] == keyChar) {
System.out.print(badCharArray[i] + " bad\n");
hourlyWageInput.setBackground(Color.RED);
}
}
}
谢谢。
最佳答案
最简单的方法是使用JFormattedTextField而不是JTextField。
NumberFormat format = NumberFormat.getNumberInstance();
format.setMinimumFractionDigits(2); // eventually maximum fraction digits
JFormattedTextField fld = new JFormattedTextField(format);