我试图用几个JTextField编写GUI。其中两个字段用于浮点值。我已经通过格式化程序忽略了任何非数字输入的字段,但我还希望文本字段中的文本在输入整数时更新为浮点值(即" 5"更改为&# 34; 5.00&#34)。我尝试使用事件中的setText()命令更新文本字段,但显示的值不会更改。我想在文本字段丢失焦点后更改文本。
代码很长,所以我将包含相关的代码段。
heightField.addFocusListener(new FocusAdapter() {
@Override
public void focusLost(FocusEvent arg0) {
heightDone = !heightField.getText().trim().equalsIgnoreCase("");
//This is the problem code//
if(UF.isInt(heightField.getText().trim()))
heightField.setText(heightField.getText().trim().concat(".00"));
System.out.println(heightField.getText());
heightFormat = UF.isFloat(heightField.getText().trim());
isDone();
}
});
答案 0 :(得分:0)
也许您需要在textField上更改后刷新帧:
frame.repaint();