DBGrid的每一筆selected移動時,所觸發的事件? |
答題得分者是:wameng
|
lcc1299
一般會員 ![]() ![]() 發表:39 回覆:42 積分:21 註冊:2004-09-12 發送簡訊給我 |
|
wameng
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
很可惜的在
DBGRID 中 用mouse點了另一行 ,會觸發 OnCellClick 事件。
不過用鍵盤上下鍵移到另一行,沒有相關的觸發事件
可能需在 KeyDown or Keypress 作為判斷。 或者使用 TDataSet.AfterScroll 事件
只要是移動游標,就會觸發。 procedure TForm1.ADOQuery1AfterScroll(DataSet: TDataSet);
begin
....
end; 發表人 - wameng 於 2004/09/29 00:44:21
|
likush
高階會員 ![]() ![]() ![]() ![]() 發表:5 回覆:235 積分:103 註冊:2002-10-08 發送簡訊給我 |
參考help
放置一個listBox
procedure TForm1.Button1Click(Sender: TObject);
var
i, j: Integer;
s: string;
begin
if DBGrid1.SelectedRows.Count>0 then
with DBGrid1.DataSource.DataSet do
for i:=0 to DBGrid1.SelectedRows.Count-1 do
begin
GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
for j := 0 to FieldCount-1 do
begin if (j>0) then s:=s ', ';
s:=s Fields[j].AsString;
end;
Listbox1.Items.Add(s);
s:= '';
end;
end; =========================
讀萬卷書~不如來K.TOP走一遭
=========================
|
T.J.B
版主 ![]() ![]() ![]() ![]() ![]() 發表:29 回覆:532 積分:497 註冊:2002-08-14 發送簡訊給我 |
我想你應該是想要做到可以複選的動作 也就是Multiselect
參考一下 自行修改即可用
if DBGrid1.SelectedRows.Count > 1 then // 複選 begin for i := 0 to DBGrid1.SelectedRows.Count-1 do begin subStoreNo := ''; DBGrid1.DataSource.DataSet.Bookmark := DBGrid1.SelectedRows.Items[i]; subStoreNo := '''' qryStoreSTORENO.AsString '''' ','; getStoreNo := getStoreNo subStoreNo; end; end;ps: qryStoreSTORENO.AsString 就表示你要抓的值 天行健 君子當自強不息~~@.@ 發表人 - t.j.b 於 2004/09/29 23:29:29
------
天行健 君子當自強不息~~@.@ |
T.J.B
版主 ![]() ![]() ![]() ![]() ![]() 發表:29 回覆:532 積分:497 註冊:2002-08-14 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |