有DBGrid1和DBGrid2,DBGrid2是查询结果,当我双击DBGrid2的某一行时,DBGrid1自动增加DBGrid2双击的数据,这个DBGrid2的DBClick事件怎么写?我要的是增加整行,不是增加所选的单元格。补充一下,DBGrid2关联的adoquery1的语句是:select ItemCode,ItemName from Item
DBGid1关联使用adotable1,使用的字段是ItemCode,ItemName,Price,Qty.我的目的是在DBGrid2查询结果选定多个物料,在DBGrid1输入单价和数量,提交到数据库
DBGid1关联使用adotable1,使用的字段是ItemCode,ItemName,Price,Qty.我的目的是在DBGrid2查询结果选定多个物料,在DBGrid1输入单价和数量,提交到数据库
with dbgrid1.DataSource.DataSet do
begin
Insert;
dbgrid1.Fields[1].Value:=dbgrd2.SelectedField.AsString;
Post;
end;
//dbgrid2表格中当前所选的记录的第一个字段内容赋值到dbgrid1表格的第二个字段内容里这只是个实例,参考这个,你自己弄一下就OK了,
可以改成
dbgrid1.fields[1].value:=dbgrid2.fields[0].value;当然,直接再弄个adoquery 加上sql语句直接insert 也应该可以
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
if DBGrid2.SelectedRows.Count>1 then begin {---如果有选择了数据---}
for i :=0 to DBGrid2.SelectedRows.Count-1 do begin{将选了的所有数据添加到DBGrid1中去}
ADOQuery1.GotoBook(pointer(DBGrid2.SelectedRows.Items[i]));
ADOTable1.Append;
ADOTable1.Fields[1].Value:=ADOQuery1.Fields[1].Value;
ADOTable1.Fields[2].Value:=ADOQuery1.Fields[2].Value;
ADOTable1.Post;
end;
end;
end;