【发布时间】:2017-07-01 07:54:43
【问题描述】:
我创建了一个控制台应用程序,现在启动它以转换为摇摆应用程序。我有一个问题,我多次搜索你的答案,但我没有找到任何答案。
我的应用程序有一个类来验证用户的输入,如果输入错误,它会在控制台中显示错误消息。所以我尝试做的是,我有一个 Jtextfield 并验证这个输入,如果输入错误它应该给我错误消息。
这是我的 Input 类,允许用户编写
public class Input {
private static BufferedReader eingabe = new BufferedReader(new InputStreamReader(System.in));
private Output output = new Output();
private static String captureText() throws Exception {
return eingabe.readLine();
}
public String formatInput() {
boolean again = true;
while (again) {
try {
String format = captureText();
if (!format.equalsIgnoreCase("Y") && !format.equalsIgnoreCase("N")) {
again = true;
throw new Exception();
}
again = false;
return format;
} catch (Exception e) {
this.output.formatInputWrong();
}
}
return null;
}
}
这就是我的输出类方法
void formatInputWrong() {
System.out.print("\nThe Format Input is wrong.");
}
我只是想知道我可以使用 Input 类的 Validation 还是应该为摇摆输入验证创建一个特殊的类,因为我知道我可以取出 JTextfield 的 Input
【问题讨论】:
-
这实际上取决于您要验证的字段类型 - 您可以使用
InputVerifier,它是后期验证过程,或者对于文本组件使用DocumentListener或DocumentFilter跨度> -
您还可以通过附加到
JButton的ActionListener进行后验证 -
是的,我会用按钮完成它,但正常的控制台验证不起作用,对吗?因此,我发布的代码是我的控制台验证如何工作的示例。
-
大多数 GUI 都是事件驱动的框架,也就是说,有些事情发生了,你就会做出响应。可能需要一点时间来适应。基本上,您不需要任何类型的循环(由您负责),您只需在触发相应事件时对其进行响应
标签: java swing validation input