NetBeansのGUIエディタを使用して、どのように私は正規表現に対して検証されなければならないのJTextFieldやJFormattedTextフィールドを作成することができますか?
-
21-09-2019 - |
質問
私は、ユーザーが[OK]ボタンをクリックするか、別のフィールドにカーソルを移動したときに対して、テキストフィールドの入力を検証する必要があることを正規表現(\d{4}\w{3}(0[1-9]|[12][0-9]|3[01])([01][0-9]|2[0-3])([0-5][0-9]){2}
)を持っています。私が行う方法を知っている、コードを書きます。しかし、私はそれは、NetBeans GUIエディタは、私は、Eclipseからと選択肢の私のIDEとしてNetBeansの方に遠ざかっています、特に以来、私のための仕事の一部を行うことは可能だ場合に興味がある、と私はフルに活用したいと思いますそれは提供しています。
解決
inputVerifierの[プロパティ]タブの外観であなたのJTextFieldのプロパティを開きます。それを開き、
今、あなたは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);
}
});
...
とGUIフォームを簡単にして作成されます:
TableFormBuilder formBuilder = getFormBuilder();
formBuilder.add("firstName");
formBuilder.add("name");
formBuilder.row();
例えば。見ここを検証または<のhref = "HTTPのために:もっとに関する情報のためにここ//karussell.wordpress.com/2009/03/21/spring-rich-client-links/」のrel = "nofollowをnoreferrer">。私は私のオープンソースプロジェクトに...
でこのsucessfullyを使用していますこの方法は、あなたはのNetBeansコンポーネントパレットに追加することができ、より一般的なSwingコンポーネントを作成することができますする