我知道如何为JTextFiled
设置初始值,但是如何设置要修复的值的属性?
这是值
的正常方式JTextFiled is = new JTextFiled("00:00:00");
当然,输出将是值为00:00:00的文本字段,但用户可以删除它。我怎么能阻止这种情况发生? 该字段的值为00:00:00,如果用户尝试删除该值,Java将在尝试编辑该值时阻止他。唯一的方法是使用键盘上的数字。
答案 0 :(得分:1)
选项1 - 将JFormattedTextField
与SimpleDateFormat
一起使用
JFormattedTextField textField = new JFormattedTextField(new SimpleDateFormat("HH:mm:ss:SSS"));
textField.setText("00:00:00:000");
选项2 - 将JFormattedTextField
与MaskFormatter
一起使用
MaskFormatter mask = null;
try {
mask = new MaskFormatter("##:##:##:###");
} catch (ParseException e) {
e.printStackTrace();
}
mask.setValidCharacters("0123456789");
mask.setPlaceholderCharacter('0');
JFormattedTextField textField2 = new JFormattedTextField(mask);
textField2.setText("00:00:00:000");
答案 1 :(得分:0)
这是如何禁用退格函数
textField.getInputMap().put(KeyStroke.getKeyStroke("BACK_SPACE"), "none");