Я работаю над формой, которая обеспечивает проверку в реальном времени для пользователя, и у меня есть одна проблема.
Цель состоит в том, чтобы поместить метку рядом с полем (в данном случае 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 ... Это должен быть другой способсделайте это.
Заранее спасибо.