簡體   English   中英

Java JFormattedTextField用於鍵入日期

[英]Java JFormattedTextField for typing dates

我一直無法使JFormattedTextField使用格式為dd / MM / yyyy的日期。 具體來說,當用戶鍵入內容時,光標應“跳”斜線,並直接到達下一個數字位置。

另外,JFormattedTextField必須驗證輸入的日期是否有效,如果日期無效,則以某種方式拒絕它,或者將其“更正”為有效日期,例如,如果用戶輸入“ 13”作為月份,則將其設置為“ 01”。 ”,然后在年份中加+1。

我嘗試通過JFormattedTextField的validate()方法使用掩碼(“ ## / ## / ####”)來檢查日期是否有效,但是看來這兩個不能很好地協同工作(或在Java上太綠色了,不知道怎么做... :),然后用戶可以在字段中鍵入任何內容。

任何幫助都非常感謝! 謝謝!

嘗試使用JCalendar

您可能必須使用常規JTextField並使用自定義文檔調用setDocument()。 我建議擴展PlainDocument,這樣可以在文檔更改時輕松驗證輸入,並在需要時添加斜杠。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM