使用内容GUI编辑,如何才能创建一个JTextField或JFormattedText领域,必须确认反对一个经常的表达吗?
-
21-09-2019 - |
题
我有一个经常的表达(\d{4}\w{3}(0[1-9]|[12][0-9]|3[01])([01][0-9]|2[0-3])([0-5][0-9]){2}
),我需要验证输入的一个文本领域对用户单击"确定"的按钮或将光标移动到另一个领域。我知道如何做的,编写代码。然而,我很感兴趣,如果它可能有内容GUI编辑做的一些工作对我来说,尤其是因为我要搬离蚀和朝//需要将物品寄为我IDE的选择,并且我希望充分利用的工具,它提供。
解决方案
打开属性您JTextField的,在属性选项卡中查找inputVerifier。打开它
现在你会被要求介绍InputVerifier代码。
ftf2.setInputVerifier(new InputVerifier() {
public boolean verifyText(String textToVerify) {
Pattern p = Pattern.compile("your regexp");
Matcher m = p.matcher(textToVerify);
if (m.matches()) {
setComponentValue(textToVerify);
return true;
}
else {
return false;
}
}
});
我还没有编译的代码,因此可能包含错误。但我认为你的想法;)
其他提示
这不是最简单的解决方案,但它是一个非常强大的一:尝试 弹簧丰富的客户, ,验证可以达到通过:
public class Validation extends DefaultRulesSource {
private Constraint NAME_VALIDATION = all(new Constraint[]{minLength(3), required()});
public void load() {
addRules(new Rules(Person.class) {
@Override
protected void initRules() {
add("name", NAME_VALIDATION);
}
});
...
和闺形式是容易地创造了通过:
TableFormBuilder formBuilder = getFormBuilder();
formBuilder.add("firstName");
formBuilder.add("name");
formBuilder.row();
E.g。看看 在这里, 为验证或 这里更多的相关信息.我用这个成功在我 开放源码项目 ...
这样你可以创建一个更一般的摇摆成分可能加入 //需要将物品寄件的调色板
不隶属于 StackOverflow