Text textField = new Text(shell, SWT.BORDER);
textField.addVerifyListener(new VerifyListener() {
@Override
public void verifyText(VerifyEvent e) {
Text text = (Text) e.getSource();
final String oldStr = text.getText();
String newStr = oldStr.substring(0, e.start) + e.text + oldStr.substring(e.end);
boolean isValid = true;
try {
int n = Integer.parseInt(newStr);
if(n < 0 || n > 100) {
isValid = false;
}
} catch (NumberFormatException ex) {
isValid = false;
}
if (!isValid) {
e.doit = false;
}
}
});
textField.addVerifyListener(new VerifyListener() {
@Override
public void verifyText(VerifyEvent e) {
Text text = (Text) e.getSource();
final String oldStr = text.getText();
String newStr = oldStr.substring(0, e.start) + e.text + oldStr.substring(e.end);
boolean isValid = true;
try {
int n = Integer.parseInt(newStr);
if(n < 0 || n > 100) {
isValid = false;
}
} catch (NumberFormatException ex) {
isValid = false;
}
if (!isValid) {
e.doit = false;
}
}
});
本文介绍如何在文本框中使用验证监听器实现数值输入范围限制,确保用户只能输入介于0到100之间的整数。
2672

被折叠的 条评论
为什么被折叠?



