我正在爲用戶提供「實時」驗證的表單上,我遇到了一個問題。InputVerifier和多個字段
目標是在字段附近放置一個標籤(本例中爲JSpinner),以便以與基於JavaScript的驗證程序相同的方式向用戶顯示接受或拒絕數據。
的問題是,對於archieving此,我需要設置的值對應的標籤,我發現這樣做是創造儘可能多的核查員作爲字段的唯一方式,這種方式:
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 ...它必須是另一種方式來做到這一點。
在此先感謝。
完美,謝謝! – 2010-08-23 06:35:41