我目前有一个包含多个SWT Spinners的JFace Wizard页面,允许用户输入正数值。由于Spinner由整数支持,因此最大限制为Integer.MAX_VALUE
。我想允许用户输入大于该值的正整数。
我不知道long
支持的任何SWT窗口小部件。我想到的一个可能的解决方案是使用Text
小部件并附加一个VerifyListener,它将执行以下操作:
public void verifyText(VerifyEvent e) {
e.doit = e.text.matches("[0-9]+");
try {
new Long(e.text);
}
catch (NumberFormatException nfe) {
e.doit = false;
}
}
是否有更好的方法允许用户输入大于Integer.MAX_VALUE
的值?
答案 0 :(得分:2)
当您输入较小的整数值时,旋转器通常很有用。即使对于更大的整数值,文本框(使用像你这样的验证器)也比旋转器更受欢迎。我猜你是在正确的道路上。