我有dephi7+sql server2000作一小软件:
新建一个form1,在它上面有button1,selquery,edit1,edit2,edit3,edit4,edit5,edit6,edit7,datetimepicker1,datetimepicker2,datetimepicker3,memo1,memo2,memo3等控件,button1的单击事件如下:
selquery.Close;
selquery.SQL.Clear;
selquery.SQL.Add('select * from indict where indictnb=:indictnb');
selquery.Params[0].AsString:=edit6.Text;
selquery.Active:=true;
if (selquery.RecordCount >0) then
begin
result:=true;
datetimepicker3.Date:=selquery.FieldValues['indictdate'];
edit1.Text:=selquery.FieldValues['indicter'];
edit2.Text:=selquery.FieldValues['address1'];
edit3.Text:=selquery.FieldValues['telephone1'];
edit4.Text:=selquery.FieldValues['indictee'];
edit5.Text:=selquery.FieldValues['clpzhh'];
memo1.Text:=selquery.FieldValues['indictcontent'];
memo2.Text:=selquery.FieldValues['indictaim'];
combobox1.Text:=selquery.FieldValues['acceptdepartment'];
memo3.Text:=selquery.FieldValues['dealresult'];
memo4.Text:=selquery.FieldValues['leadmind'];
datetimepicker1.Date:=selquery.FieldValues['returndate'];
edit7.Text:=selquery.FieldValues['returnfrom'];
end
else result:=false;
编译后,在edit6中输入123,单击button1不能给各控件赋值(sql server中的indict表中有indictnb=123的一条记录),但在form1上新增datasource1和dbgrid1控件,并datasource1.dataset:=selquery;
dbgrid1.dataset:=datasource1;
dbgrid1.visual:=true;后再单击button1可以给各控件赋值,请问这是为什么?