主题:修改记录请教
本人修改记录时碰到了如下问题,请教各位高手:
用几个Edit组件添加记录后,都在底下用一个dbgrid组件来显示,现想修改其中的任何一条记录,编写的代码如下:
procedure Tinput.BitBtn4Click(Sender: TObject);
begin
if Application.MessageBox('确实要修改当前记录么','提示',mb_YesNo)=ID_Yes then
begin
with Adotable1 do
begin
edit;
fieldbyname('耗材名称').AsString:=Trim(Edit1.Text);
fieldbyname('数量').AsString:=Trim(Edit2.Text);
fieldbyname('所领工厂').AsString:=Trim(Edit3.Text);
fieldbyname('部门').AsString:=Trim(Edit4.Text);
fieldbyname('领取人').AsString:=Trim(Edit5.Text);
fieldbyname('领取时间').AsString:=Trim(Edit6.Text);
post
end;
end;
end;
能够在dbgrid中选中一条记录后在Edit组件中填入要修改的值,但只有当填入改记录全部的值才能修改,若只改变记录的一两个值则点击修改按钮后,修改的那条记录的值全变为空了。
现想实现的效果是,选中记录后只修改该记录中的一两个值也可以。
请帮忙解决啊?谢谢
用几个Edit组件添加记录后,都在底下用一个dbgrid组件来显示,现想修改其中的任何一条记录,编写的代码如下:
procedure Tinput.BitBtn4Click(Sender: TObject);
begin
if Application.MessageBox('确实要修改当前记录么','提示',mb_YesNo)=ID_Yes then
begin
with Adotable1 do
begin
edit;
fieldbyname('耗材名称').AsString:=Trim(Edit1.Text);
fieldbyname('数量').AsString:=Trim(Edit2.Text);
fieldbyname('所领工厂').AsString:=Trim(Edit3.Text);
fieldbyname('部门').AsString:=Trim(Edit4.Text);
fieldbyname('领取人').AsString:=Trim(Edit5.Text);
fieldbyname('领取时间').AsString:=Trim(Edit6.Text);
post
end;
end;
end;
能够在dbgrid中选中一条记录后在Edit组件中填入要修改的值,但只有当填入改记录全部的值才能修改,若只改变记录的一两个值则点击修改按钮后,修改的那条记录的值全变为空了。
现想实现的效果是,选中记录后只修改该记录中的一两个值也可以。
请帮忙解决啊?谢谢