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

DBGrid 點一下資料如何顯示在Edit上

答題得分者是:careychen
sssp116
一般會員


發表:23
回覆:27
積分:10
註冊:2008-12-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-12-20 15:25:30 IP:118.232.xxx.xxx 訂閱
各位大哥們幫忙一下吧~之前有提問過一次!被人家反問說為什麼不要用DBEdit做~我已經回覆了可是就是沒人回我
我當然知道DBEdit可以做~我就只是想要知道如何點DBGrid裡面其中一筆資料他會全部顯示在我的Edit上而已啊!
DBEdit的方法我知道~我想要知道的是如何套用在一般的Edit上~求知的精神讓我知道每一項都得解出來!
不是不會就跳過的~麻煩各位知道的大哥們不要吝嗇解說一下吧~小弟在此非常感謝您們
careychen
尊榮會員


發表:41
回覆:580
積分:959
註冊:2004-03-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-12-20 16:21:06 IP:60.248.xxx.xxx 訂閱
我不知道您有沒有發現您的問題被砍掉了?  所以您的文章自然都沒人有看到了!! 先試試看下面是不是您的需求

[code delphi]
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
Edit1.Text := Column.Field.AsString;
end;
[/code]

===================引 用 sssp116 文 章===================
各位大哥們幫忙一下吧~之前有提問過一次!被人家反問說為什麼不要用DBEdit做~我已經回覆了可是就是沒人回我
我當然知道DBEdit可以做~我就只是想要知道如何點DBGrid裡面其中一筆資料他會全部顯示在我的Edit上而已啊!
DBEdit的方法我知道~我想要知道的是如何套用在一般的Edit上~求知的精神讓我知道每一項都得解出來!
不是不會就跳過的~麻煩各位知道的大哥們不要吝嗇解說一下吧~小弟在此非常感謝您們
------
價值的展現,來自於你用哪一個角度來看待它!!
編輯記錄
careychen 重新編輯於 2008-12-20 16:31:30, 註解 無‧
sssp116
一般會員


發表:23
回覆:27
積分:10
註冊:2008-12-05

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-12-22 09:40:17 IP:60.248.xxx.xxx 訂閱
不好意思我想要的是BCB的寫法,就是點DBGrid裡面一筆資料!
會把裡面所有的資料顯示在上面各個Edit上~
點DBGrid裡面的每一筆資料,上面的Edit都會跟著改變~我試過大哥您的程式碼改成BCB的寫法
可是沒有辦法抓到他的資料~只能抓到他那個欄位名稱而已~謝謝。
sssp116
一般會員


發表:23
回覆:27
積分:10
註冊:2008-12-05

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-12-22 09:49:44 IP:60.248.xxx.xxx 訂閱
OK了~腦袋轉了一下就可以了,謝謝您的回答!
小弟在此非常感謝您~
sssp116
一般會員


發表:23
回覆:27
積分:10
註冊:2008-12-05

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-12-22 10:02:39 IP:60.248.xxx.xxx 訂閱
挖~問題又來了!現在我只抓得到他第一個欄位的名稱而已
比如說我DBGrid裡面第一筆資料有數個欄位~第一個欄位員工代碼:526 第二個欄位:員工姓名:XXX
她就只能抓到第一個欄位而已,不知道怎麼使它全部抓到然後全部送到上面各個Edit上呢?
不好意思我太魯莽了~第一個欄位出來就馬上結案了= ="
careychen
尊榮會員


發表:41
回覆:580
積分:959
註冊:2004-03-03

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-12-22 10:16:13 IP:60.248.xxx.xxx 訂閱
=_= 讓您願意讓我虧一下嗎? 您不是說您很有求知精神,怎麼沒看到您自己試的結果,似乎一直在問答案…

找到 DBGrid 的 DataSource 來源,例如: Query 類或是 Table 類,如 TAdoQuery 或是 TAdoTable 之類的
在他的 AfterScroll 的地方加上如下的程式碼:

[code delphi]
procedure TForm1.ADOTable1AfterScroll(DataSet: TDataSet);
begin
Edit1.Text := DataSet.FieldByName(FieldName1).AsString;
Edit2.Text := DataSet.FieldByName(FieldName2).AsString;


end;
[/code]

===================引 用 sssp116 文 章===================
挖~問題又來了!現在我只抓得到他第一個欄位的名稱而已
比如說我DBGrid裡面第一筆資料有數個欄位~第一個欄位員工代碼:526 第二個欄位:員工姓名:XXX
她就只能抓到第一個欄位而已,不知道怎麼使它全部抓到然後全部送到上面各個Edit上呢?
不好意思我太魯莽了~第一個欄位出來就馬上結案了= ="
------
價值的展現,來自於你用哪一個角度來看待它!!
sssp116
一般會員


發表:23
回覆:27
積分:10
註冊:2008-12-05

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-12-22 11:12:09 IP:60.248.xxx.xxx 訂閱
哈哈~真是不好意思!因為我是新手不會貼程式碼,其實已經試了我都快亂掉了~"~
我是要點一下DBGrid裡面的資料才開始顯示在Edit上的~
您的程式碼一開始就會在上面了~
我已經試出來了啦~呵!剛剛才知道怎麼貼程式碼@@"
謝謝您的回答囉~感恩感恩

[code cpp]
void __fastcall TForm1::DBGrid1CellClick(TColumn *Column)
{
Edit_NO->Text = ADOTable1->FieldByName("User_ID")->AsString;
Edit_Name->Text = ADOTable1->FieldByName("User_Name")->AsString;


[/code]

===================引 用 careychen 文 章===================
=_= 讓您願意讓我虧一下嗎? 您不是說您很有求知精神,怎麼沒看到您自己試的結果,似乎一直在問答案…

找到 DBGrid 的 DataSource 來源,例如: Query 類或是 Table 類,如 TAdoQuery 或是 TAdoTable 之類的
在他的 AfterScroll 的地方加上如下的程式碼:

[code delphi]
procedure TForm1.ADOTable1AfterScroll(DataSet: TDataSet);
begin
Edit1.Text := DataSet.FieldByName(FieldName1).AsString;
Edit2.Text := DataSet.FieldByName(FieldName2).AsString;


end;
[/code]
編輯記錄
sssp116 重新編輯於 2008-12-22 11:13:15, 註解 無‧
系統時間:2017-10-24 13:48:24
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!