SWT Text控件输入指定范围数字

此方法允许Text内为空,避免无法回退修改。

private void setTextRange(Text text, int min, int max) {
		text.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 {
					if (newStr.equals("")) {
						isValid = true;
					} else {
						int n = Integer.parseInt(newStr);
						if (n < min || n > max) {
							isValid = false;
						}
					}
				} catch (NumberFormatException ex) {
					isValid = false;
				}
				if (!isValid) {
					e.doit = false;
				}
			}
		});
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值