Edit及DB Grid的問題 |
尚未結案
|
aaprada
一般會員 發表:6 回覆:5 積分:2 註冊:2004-05-14 發送簡訊給我 |
1.如何在Edit物件判斷輸入的值為數值(能不能在OnKeyDown的屬性下,按了enter後判斷)或是有屬性可以直接強迫定義(p.s:我要用edit物件,不是maskEdit)
(除了自己寫function,把edit內的值長度捉出來,再用迴圈下去SubString判斷
這種笨方法,還有無更簡單且有效的方法?) 2.在DB Grid中,有一筆資料有值(已作新增動作),但當有人對某一特定欄位做了修改的動作,自動寫一個值回另一個欄位,請問這要如何做到(source code)?
(一筆已存在db的資料,當有人對a欄位做修改動作,除了改變a的值,再將b欄位的
值寫回db,這段code要在那個event下?) 謝謝各位大大,感激不盡~
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi aaprada, 1.在該 Edit 的 OnKeyPress Event 上寫入類似以下程式碼,將不允許之輸入更改為 #0
procedure TForm1.Edit7KeyPress(Sender: TObject; var Key: Char); begin IF (ORD(KEY) <= 47) OR ((KEY >= '0') AND (KEY <= '9')) THEN EXIT ELSE KEY := #0; end;2.參考 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=50105 在BeforePost 事件上加入程式碼 procedure TForm1.Query1BeforePost(DataSet: TDataSet); begin DataSet.FieldByName('B').Value := DataSet.FieldByName('A').Value; end;---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman |
aaprada
一般會員 發表:6 回覆:5 積分:2 註冊:2004-05-14 發送簡訊給我 |
|
aaprada
一般會員 發表:6 回覆:5 積分:2 註冊:2004-05-14 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi aaprada, - : CHR(45)
. : CHR(46)
你可以使用紅色字體部分去檢查輸入值,再決定你所允許之值為何
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char); begin // ShowMessage(IntToStr(Ord(Key))); IF (ORD(KEY) = 45) OR (ORD(KEY) = 46) OR ((KEY >= '0') AND (KEY <= '9')) THEN EXIT ELSE KEY := #0; end;至於呼叫 FORM 的方法,查詢一下應該可以發現不少文章 http://delphi.ktop.com.tw/topic.php?topic_id=30761 http://delphi.ktop.com.tw/topic.php?topic_id=30803 ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |