全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1344
推到 Plurk!
推到 Facebook!

關DBGird的值抓取

答題得分者是:Justmade
alice
初階會員


發表:41
回覆:49
積分:28
註冊:2002-04-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-27 01:18:30 IP:61.229.xxx.xxx 未訂閱
在DBGrid中,按OnEditButtonClick,想做開窗查詢資料,預設值想帶DBGrid的值, 如我己輸入 'abc'時,觸發 OnEditButtonClick 的Events, 以DBGrid.Fields[0].Text 要做為預設值,但DBGrid.Fields[0].Text='' 而非我所要的 'abc' 的值     想請問,我該如何抓取還在畫面上的DBGrid的值,    謝謝
Mickey
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-27 08:07:38 IP:61.219.xxx.xxx 未訂閱
你應該是取 DBGrid.DataSource.DataSet.Fields[0].asstring /* Free 和 Create 一樣重要 */
Justmade
版主


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

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-03-27 08:08:05 IP:218.16.xxx.xxx 未訂閱
參考 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=26981
chih
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-03-27 08:08:58 IP:211.74.xxx.xxx 未訂閱
建議這樣做
procedure TMasterFM.DetailDBGEditButtonClick(Sender: TObject);
begin
  if (DetailDBG.SelectedField=Query1AAA) then //Query1AAA是你的EditButton欄位
begin
//DO WHAT YOU WANT....
end;
end;
TRY TRY SEE
引言: 在DBGrid中,按OnEditButtonClick,想做開窗查詢資料,預設值想帶DBGrid的值, 如我己輸入 'abc'時,觸發 OnEditButtonClick 的Events, 以DBGrid.Fields[0].Text 要做為預設值,但DBGrid.Fields[0].Text='' 而非我所要的 'abc' 的值 想請問,我該如何抓取還在畫面上的DBGrid的值, 謝謝 < face="Verdana, Arial, Helvetica">
Justmade
版主


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

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-03-27 08:26:17 IP:218.16.xxx.xxx 未訂閱
這個問題的重點在於當一個使用者正在 Edit 一個 cell 時,該 cell 的資料並未存放入相對的 Field,所以拿到的是舊資料 (對新記錄就是空白)。 所以解決方法可以是 Typecast 該 dbGrid 為一個自定的後代來直接取得 inline editor 的值,或用小弟提議的旁門方法先移一移 cell 使新資料寫入 field,兩種方法在上面的連結均有提及。
alice
初階會員


發表:41
回覆:49
積分:28
註冊:2002-04-30

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-03-27 11:01:15 IP:211.75.xxx.xxx 未訂閱
引言: 這個問題的重點在於當一個使用者正在 Edit 一個 cell 時,該 cell 的資料並未存放入相對的 Field,所以拿到的是舊資料 (對新記錄就是空白)。 所以解決方法可以是 Typecast 該 dbGrid 為一個自定的後代來直接取得 inline editor 的值,或用小弟提議的旁門方法先移一移 cell 使新資料寫入 field,兩種方法在上面的連結均有提及。
在 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=26981 所看到的 type TTmpGrid=class(TDBGrid); onDBGridEditButton event add Str:=TTmpGrid(DBGrid1).InplaceEditor.text; 的方式,就是我所要, 謝謝!!
系統時間:2024-07-03 15:12:27
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!