JFormattedTextFieldにプレースホルダ文字列を追加したMaskFormatterを設定する
Total: 4509, Today: 1, Yesterday: 0
Posted by aterai at
Last-modified:
Summary
JFormattedTextFieldにプレースホルダ文字やプレースホルダ文字列を追加したMaskFormatterを設定します。
Screenshot

Advertisement
Source Code Examples
MaskFormatter formatter2 = new MaskFormatter(mask);
formatter2.setPlaceholderCharacter('_');
formatter2.setPlaceholder("000-0000");
field2.setFormatterFactory(new DefaultFormatterFactory(formatter2));
View in GitHub: Java, KotlinDescription
new MaskFormatter("###-####")- プレースホルダなしの
MaskFormatterを設定
- プレースホルダなしの
MaskFormatter#setPlaceholderCharacter('_')- プレースホルダ文字として
_を設定
- プレースホルダ文字として
MaskFormatter#setPlaceholder("000-0000")- プレースホルダ文字として
_を、プレースホルダ文字列として000-0000を設定 - プレースホルダ文字と違って、プレースホルダ文字列は初回のみ使用される
- プレースホルダ文字として
- JDK-6462028 MaskFormatter API documentation refers to getDisplayValue - Java Bug System
- MaskFormatter (Java Platform SE 8)
- ドキュメントには
formatter.getDisplayValue(tf, "123");とのコード例が記述されているがMaskFormatter#getDisplayValue(...)というメソッドは存在しない
- JFormattedTextField (Java Platform SE 8)
- 「特定の型の値を編集するように
JFormattedTextFieldを設定する場合は、setMaskまたはsetFormatterFactoryを使用してください。」と記述されているがJFormattedTextFieldにsetMaskというメソッドは存在しない - MaskFormatter#setMask(String)のことかもしれない
- 「特定の型の値を編集するように
Reference
- MaskFormatter (Java Platform SE 8)
- JDK-6462028 MaskFormatter API documentation refers to getDisplayValue - Java Bug System