TMaskEdit 透過 EditMask 屬性定義嚴格輸入格式,適用於日期、電話、車牌、身分證字號等固定格式欄位,避免使用者輸入錯誤格式資料。
雙擊 EditMask 屬性彈出設計對話框,遮罩格式採三段式,以分號 ; 分隔:
第一段;第二段;第三段
範例:!>LL/000000;1;_
| 格式符 | 意義 | 範例 |
|---|---|---|
L | 必須輸入字母 | LL = 兩個大寫字母 |
l | 可選字母(可用方向鍵跳過) | |
A | 必須輸入字母或數字 | AA = 兩個英數字元 |
a | 可選字母或數字 | |
C | 必須輸入字母 | CC = 兩個字母 |
c | 可選字母 | |
0 | 必須輸入數字 | 000000 = 六位數字 |
9 | 可選數字 | |
# | 可選數字或正負號 | |
> | 後續字母轉大寫(直到 < 或 <>) | >LL 強制大寫 |
< | 後續字母轉小寫 | <ll 強制小寫 |
<> | 不轉換大小寫,保持輸入原貌 | |
\ | 跳脫字元,下一字元視為字面常值 | \A 顯示字面 A |
! | 前導空格不儲存(無 ! 則尾部空格不儲存),只能置於最前 | !999 |
; / | 標準分隔符(/ 顯示為 -) | LL/0000 → AB-1234 |
1:包含非使用者輸入字元(分隔符、固定字元)儲存為資料一部分0:僅儲存使用者實際輸入字元_ 或空格!>LL/000000;1;_
!:前導空格不存>LL:強制兩碼大寫字母/:分隔符顯示為 -,1 表示儲存分隔符000000:六位必填數字_:空白顯示底線!PO/000000;1;_
固定字元 PO 直接寫入掩碼,使用者無法修改。
善用 TMaskEdit 可在 UI 層直接攔截格式錯誤,減少後端驗證邏輯,提升資料品質與使用者體驗。