Swing/MaskFormatterPlaceholder のバックアップ(No.7)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/MaskFormatterPlaceholder へ行く。
- category: swing folder: MaskFormatterPlaceholder title: JFormattedTextFieldにプレースホルダ文字列を追加したMaskFormatterを設定する tags: [JFormattedTextField, MaskFormatter, FormatterFactory] author: aterai pubdate: 2017-03-13T14:44:45+09:00 description: JFormattedTextFieldにプレースホルダ文字やプレースホルダ文字列を追加したMaskFormatterを設定します。 image: https://drive.google.com/uc?id=1jr_CEn9HFdHVL7hiYobxNFuuuVvnlXuyrA
概要
JFormattedTextField
にプレースホルダ文字やプレースホルダ文字列を追加したMaskFormatter
を設定します。
Screenshot
Advertisement
サンプルコード
MaskFormatter formatter2 = new MaskFormatter(mask);
formatter2.setPlaceholderCharacter('_');
formatter2.setPlaceholder("000-0000");
field2.setFormatterFactory(new DefaultFormatterFactory(formatter2));
View in GitHub: Java, Kotlin解説
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)のことかもしれない
- 「特定の型の値を編集するように
参考リンク
- MaskFormatter (Java Platform SE 8)
- JDK-6462028 MaskFormatter API documentation refers to getDisplayValue - Java Bug System