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

DBGRid欄位驗證

尚未結案
ooctiger
一般會員


發表:25
回覆:46
積分:14
註冊:2002-07-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-20 16:47:49 IP:61.219.xxx.xxx 未訂閱
DBGrid的某一欄位(第二個欄位)是由User輸入的 為確保User輸入資料的正確性, 我應如何在User移開該欄位時做資料驗證. 有哪一個DBGrid事件可以來寫驗證的程式? 請各位指教
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-20 16:57:15 IP:210.66.xxx.xxx 未訂閱
我是在TField的OnValidate做處理的!參考看看! Ian
Justmade
版主


發表:94
回覆:1934
積分:2030
註冊:2003-03-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-20 16:57:36 IP:218.16.xxx.xxx 未訂閱
在 DBGrid 的 onColExit 裡做 if DBGrid1.SelectedIndex = 1 then //第二個欄位 begin .... .... end
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-20 16:58:37 IP:61.221.xxx.xxx 未訂閱
引言: DBGrid的某一欄位(第二個欄位)是由User輸入的 為確保User輸入資料的正確性, 我應如何在User移開該欄位時做資料驗證. 有哪一個DBGrid事件可以來寫驗證的程式? 請各位指教
ooctiger, 您好 可以試試將驗證程式寫在OnColExit的Event裡。 ======================= 涵養怒中氣。謹防順口言。留心忙裡錯。珍惜有時錢。 是非終日有,不聽自然無 天下本無事,庸人自擾之
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-05-20 17:01:00 IP:211.74.xxx.xxx 未訂閱
procedure TForm1.DBGrid1ColExit(Sender: TObject);
begin
  if Query1.State = dsBrowse then exit;
//第二個欄位的欄名,你可以在這裡作你要的檢查
  if Query1.FieldByName('ABC').AsString = '' then
    begin
      SHOWMESSAGE('錯誤!!');
      abort;
    end;
end;
TRY TRY SEE
cmj
高階會員


發表:15
回覆:242
積分:226
註冊:2002-06-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-05-20 21:34:36 IP:211.76.xxx.xxx 未訂閱
引言: DBGrid的某一欄位(第二個欄位)是由User輸入的 為確保User輸入資料的正確性, 我應如何在User移開該欄位時做資料驗證. 有哪一個DBGrid事件可以來寫驗證的程式? 請各位指教
l630521 的 我是在TField的OnValidate做處理的!參考看看! 是較佳做法,因為一定會執行 若在dbGrid的ONColExit寫,當按存檔按鈕時不會執行,要在資料表元件的BeforePost事件中補上驗證程式才萬無一失. 發表人 - cmj 於 2003/05/20 21:45:31
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-05-20 22:09:42 IP:218.32.xxx.xxx 未訂閱
嗯...我也認為 OnValidate Event 比較恰當.    同一個 Column , 資料游標上下移也會觸動
Justmade
版主


發表:94
回覆:1934
積分:2030
註冊:2003-03-12

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-05-20 22:25:14 IP:218.16.xxx.xxx 未訂閱
嗯 onValidate 根本就是用來 Validate 的。 慣性使用 Control 的 onExit 所以自然地想到 onColExit cmj 兄提的按 Button 不會觸發 onColExit 通常會在 DBGrid 的 onExit 呼叫 onColExit 一次 (onEnter-onColEnter 亦是),不過始終是多了不必要的一步。 Micky 兄提的就更重要了,總不成在 onClick / onKeyPress 裡也加 Code 來做。 所以,謝謝 I630521 / cmj / Micky 兄讓小弟又上了一課。
系統時間:2024-11-23 3:43:09
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!