我正在开发一个表单,为用户提供“实时”验证,我有一个问题。
目标是在字段附近放置一个标签(在本例中是JSpinner),以向用户显示数据是被接受还是被拒绝,这与基于javascript的验证器所做的相同。
问题是要存档这个,
我需要设置相应标签的值
class MyVerifier extends InputVerifier{
static final double MAX_VALUE = 30;
@Override
public boolean verify(JComponent input) {
JTextField tf = (JTextField) input;
Double value = Double.parseDouble(tf.getText().replace(',', '.'));
return (value>1);
}
@Override
public boolean shouldYieldFocus(JComponent input) {
boolean isValid = super.shouldYieldFocus(input);
if (isValid) {
jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("resources/accept.png")));
jLabel1.setText("");
} else {
jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("resources/exclamation.png")));
jLabel1.setText("The number of items must be greater than 1");
}
return true;
}
}
然后,与jLabel2相同的代码。。。一定是另一种方法。
提前谢谢。