edit输入限制问题?部份只读? |
缺席
|
zgjob
一般會員 發表:5 回覆:4 積分:1 註冊:2008-05-22 發送簡訊給我 |
|
careychen
尊榮會員 發表:41 回覆:580 積分:959 註冊:2004-03-03 發送簡訊給我 |
HI, 小弟整合了兩位大大 wameng、h@visli 在下面這篇的 KeyDown 指令
http://delphi.ktop.com.tw/board.php?cid=30&fid=69&tid=88862 1、請將 Edit1 的 MaxLength 設為 6 2、請在 KeyDown 事件加入下面的 Code [code delphi] procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var Mgs: TMsg; procedure EatKey; begin PeekMessage(Mgs, 0, WM_CHAR, WM_CHAR, PM_REMOVE); end; begin case Key of 35..40:; // Home, End, Left, Top, Right, Bottom 8: if (Length(Edit1.Text) <= 3) or (Edit1.SelStart <= 3) then EatKey; 48..57:; else // 至於下面這個為什麼設 7 因為我設 0 沒用... // 所以有特殊的按鍵,像是 Del 我就無法阻止 Key := 7; EatKey; end; end; [/code]
------
價值的展現,來自於你用哪一個角度來看待它!! |
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
改用 MASKEDIT就可以解決
MASKEDIT1.EDITMASK:=' '\1\0\1###'; 查一下HELP就知道 另外, 我的防毒系統抓出你置放的鏈結有問題哦! ===================引 用 zgjob 文 章=================== 如何限制edit输入框中的输入?? 要求是: 窗体启动时,edit中加载了一组数字如101001, 前面的101不允许用户修改???如何只允许用户修改后面三位001,且从101开始,后面最多只能输入三位数, 即edit输入框的最大长度为6 至今只看到一个医院方面的商业软件做到了这点,不知道各位高手们在delphi下有没有办法实现??? |
careychen
尊榮會員 發表:41 回覆:580 積分:959 註冊:2004-03-03 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |