溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Swing中JFormattedTextField組件如何使用

發(fā)布時(shí)間:2021-08-12 11:18:58 來源:億速云 閱讀:140 作者:Leah 欄目:編程語言

Swing中JFormattedTextField組件如何使用,針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。

清單 1. 定義輸入掩碼

// Four-digit year, followed by month name and day of month,  // each separated by two dashes (--)  DateFormat format =  new SimpleDateFormat("yyyy--MMMM--dd");  DateFormatter df = new DateFormatter(format);  // US Social Security number  MaskFormatter mf1 =  new MaskFormatter("###-##-####");  // US telephone number  MaskFormatter mf2 =  new MaskFormatter("(###) ###-####");

一旦您指定了輸入格式,您隨后就要將格式化器傳入 JFormattedTextField 構(gòu)造器中,如下所示:

還有其它一些可配置的選項(xiàng),它們?nèi)Q于您使用的格式化器。例如:用 MaskFormatter ,您能用 setPlaceholderCharacter(char) 設(shè)置占位符字符。另外,對(duì)于日期域,如果您將域初始化為某個(gè)值使一個(gè)用戶知道什么樣的輸入格式是可接受的,這樣將會(huì)有所幫助。

全部組合在一起

創(chuàng)建屏蔽輸入域的一切都已就緒。清單 2 通過把以前的代碼片斷組合在一起,為您提供了一個(gè)用于檢驗(yàn)新性能的完整示例。圖 1 展示了這個(gè)示例的顯示。隨便調(diào)整各個(gè)掩碼來檢驗(yàn)其他的掩碼字符。

清單 2.Swing的JFormattedTextField組件示例

import java.awt.*;  import javax.swing.*;  import javax.swing.text.*;  import java.util.*;  import java.text.*;  public class FormattedSample {  public static void main (String args[]) throws ParseException {  JFrame f = new JFrame("JFormattedTextField Sample");  f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  Container content = f.getContentPane();  content.setLayout(new BoxLayout(content, BoxLayout.PAGE_AXIS));  // Four-digit year, followed by month name and day of month,  // each separated by two dashes (--)  DateFormat format =  new SimpleDateFormat("yyyy--MMMM--dd");  DateFormatter df = new DateFormatter(format);  JFormattedTextField ftf1 = new JFormattedTextField(df);  ftf1.setValue(new Date());  content.add(ftf1);  // US Social Security number  MaskFormatter mf1 =  new MaskFormatter("###-##-####");  mf1.setPlaceholderCharacter('_');  JFormattedTextField ftf2 = new JFormattedTextField(mf1);  content.add(ftf2);  // US telephone number  MaskFormatter mf2 =  new MaskFormatter("(###) ###-####");  JFormattedTextField ftf3 = new JFormattedTextField(mf2);  content.add(ftf3);  f.setSize(300, 100);  f.show();  }  }

關(guān)于Swing中JFormattedTextField組件如何使用問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI