JFormattedTextFieldからフォーカスが失われた場合の処理を設定する
Total: 4342, Today: 1, Yesterday: 0
Posted by aterai at
Last-modified:
Summary
JFormattedTextFieldからフォーカスが失われた場合に実行するアクションを設定してテストします。
Screenshot

Advertisement
Source Code Examples
JFormattedTextField ftf = new JFormattedTextField();
try {
MaskFormatter formatter = new MaskFormatter("UUUUUUUUUU");
ftf.setFormatterFactory(new DefaultFormatterFactory(formatter));
ftf.setFocusLostBehavior(JFormattedTextField.COMMIT)
} catch (ParseException ex) {
ex.printStackTrace();
}
View in GitHub: Java, KotlinDescription
JFormattedTextField.COMMIT_OR_REVERTJFormattedTextFieldのデフォルト- フォーカスが失われたとき正当な値の場合は値を確定し不当な値の場合は前回値に戻す
JFormattedTextField.REVERT- フォーカスが失われたとき常に前回値に戻す
- 編集を確定するには
JFormattedTextField#commitEdit()を自前で呼ぶか、DefaultFormatter#setCommitsOnValidEdit(true)と設定(文字列が編集されるたびにcommitEditが自動的に呼び出される)する必要がある
JFormattedTextField.COMMIT- フォーカスが失われたとき現在の値を確定する
- 現在の値が正当な値でない場合でも、その値がそのまま残る
JFormattedTextField.PERSIST- フォーカスが失われたとき何も処理しない