用gotobook,看看我的代码吧,//多行选定,并更新 procedure TForm1.Pub(pobflag:string); var i:integer; tstr : string; sql:string; begin for i:=0 to self.DBGrid1.SelectedRows.Count-1 do begin self.ADOQuery1.GotoBook(Pointer(self.DBGrid1.SelectedRows[i])); self.ADOQuery2.Close; tStr := 'update wsfileArchives set fb='''+pobflag+''' where (Fileturn='''+self.ADOQuery1.FieldValues['fileturn']+''') and ( WyBsf='''+ ADOQuery1.FieldValues['WyBsf']+''')'; Self.ADOQuery2.SQL.Clear; self.ADOQuery2.SQL.Add(tStr); self.ADOQuery2.ExecSQL; end; end;
procedure TForm1.Pub(pobflag:string);
var
i:integer;
tstr : string;
sql:string;
begin
for i:=0 to self.DBGrid1.SelectedRows.Count-1 do
begin
self.ADOQuery1.GotoBook(Pointer(self.DBGrid1.SelectedRows[i]));
self.ADOQuery2.Close;
tStr := 'update wsfileArchives set fb='''+pobflag+''' where (Fileturn='''+self.ADOQuery1.FieldValues['fileturn']+''') and ( WyBsf='''+ ADOQuery1.FieldValues['WyBsf']+''')';
Self.ADOQuery2.SQL.Clear;
self.ADOQuery2.SQL.Add(tStr);
self.ADOQuery2.ExecSQL;
end;
end;
adoquery.fieldbyname('字段').asstring
在ColEnter 中写:
showmessage(dbgrid1.SelectedField.AsString);
在AfterScroll中写:
if showing then
showmessage(dbgrid1.SelectedField.AsString);
cellcick是单击单元格