我设置了三个TABsheet表。。第一个表里放了一个DBgrid
第二个表里放了一个dbgrid用不同的adoquery和datasource 进行联接。
问题是先点击第一个sheet,再点第二个sheet后再来点第一个sheet...这时候adoquery1就读不出数据库的数据了第一个表显示数据的代码
procedure Toverh.dbgridcreat1 ;
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from sxzl');
ADOQuery1.Open;
end;
第二表显示数据的代码
procedure Toverh.dbgridcreat2 ;
begin
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('select * from smzl');
ADOQuery2.Open;
end;
选择不同表时事件procedure Toverh.PageControl1Change(Sender: TObject);
var
i:integer;
begin
i:=pagecontrol1.ActivePageIndex ;
case i of
0:
begin
dbgridcreat1;//点击过第二个表再点第一个表时,DBGRID就显示不出数据。不晓得为什么?
end;
1:
begin
dbgridcreat2;
end;
2:
begin end;
end;
第二个表里放了一个dbgrid用不同的adoquery和datasource 进行联接。
问题是先点击第一个sheet,再点第二个sheet后再来点第一个sheet...这时候adoquery1就读不出数据库的数据了第一个表显示数据的代码
procedure Toverh.dbgridcreat1 ;
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from sxzl');
ADOQuery1.Open;
end;
第二表显示数据的代码
procedure Toverh.dbgridcreat2 ;
begin
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('select * from smzl');
ADOQuery2.Open;
end;
选择不同表时事件procedure Toverh.PageControl1Change(Sender: TObject);
var
i:integer;
begin
i:=pagecontrol1.ActivePageIndex ;
case i of
0:
begin
dbgridcreat1;//点击过第二个表再点第一个表时,DBGRID就显示不出数据。不晓得为什么?
end;
1:
begin
dbgridcreat2;
end;
2:
begin end;
end;
还是在PageControl里
那各个相对独立,不应该出现上述问题,应该是哪里的设置有问题,仔细看看另外:
这个整个的写法也....