我想做一个可编程计算器,我有基本的 GUI,现在我正在尝试设置按钮和显示器。我的显示文本基本上是“0”,如果用户输入一个数字,则应该显示该数字。我试图用 KeyListener 来做,但如果我按下一个键,它会显示两次。为什么?
textField.addKeyListener(new KeyListener(){
boolean newNumber = true;
public void keyTyped(KeyEvent e) {
}
public void keyPressed(KeyEvent e) {
int keyCode = e.getKeyCode();
if(keyCode == e.VK_BACK_SPACE && textField.getText().length() == 1){
textField.setText("0");
newNumber = true;
}
if(textField.getText().equals("0") && newNumber){
textField.setText(KeyEvent.getKeyText(keyCode));
newNumber = false;
}
}
public void keyReleased(KeyEvent e) {
}
});
输入前:
“1”输入后:
海绵宝宝撒
相关分类