線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:880
推到 Plurk!
推到 Facebook!

Edit及DB Grid的問題

尚未結案
aaprada
一般會員


發表:6
回覆:5
積分:2
註冊:2004-05-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-05-14 15:18:52 IP:211.21.xxx.xxx 未訂閱
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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-05-14 17:23:49 IP:210.65.xxx.xxx 未訂閱
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

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-05-18 12:55:48 IP:211.74.xxx.xxx 未訂閱
謝謝Fishman大大的講解~ 不好意思再延伸第一個問題,我要判斷在Edit內只能輸數值(包括正負小數點) ,請問該如何處理?! (ex: -0.7 ~ 0.7)
aaprada
一般會員


發表:6
回覆:5
積分:2
註冊:2004-05-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-05-18 13:02:44 IP:211.74.xxx.xxx 未訂閱
歹勢,追加一個問題.. 今天我已經開了五個Form(分別是Form1,Form2,Form3,Form4,Form5), 執行時一開始是show Form1(為主畫面),但今天我要多加一個Form6(為check 使用者Login身分),變成一開始先秀Form6,如果輸入正確則call Form1... 請問各位大大這該如何做?!
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-05-18 14:21:33 IP:210.65.xxx.xxx 未訂閱
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
系統時間:2024-06-14 12:43:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!