我在数据模块里放置了一个ADOTable1,和DataSource1,他们的关系分别设置好了!让ADOTable1在不同的时候,给它不同的表!可是这样几个程序窗口共用ADOTable1时(虽然给它不同的表!),这样也会出错!如果在每个窗体上放置单独的ADOTable和DataSource就不会出现任何错误!怎么回事?例如:Form1中将ADOTable1.TableName:='table1';Form1中的一个DBEdit1.DataFiled:='s1';
Form2中将ADOTable1.TableName:='table2';Form2中的一个DBEdit2.DataFiled:='s2';
这样的话,就会出现我如果点击菜单弹出Form1,那么正常!DBEdit1能正常显示我想要的值。这是再弹出Form2(窗体初始化时我已分别赋了新的表名),那么就会提示找不到字段'S2'!反之,先弹出Form2也是这样!怎么回事?当我分别再每个窗体上放置ADOTable和DataSource就不会出错!
begin
ADOTable1.Close;
ADOTable1.TableName:='Table1';
ADOTable1.Open;
end;
改变后面要打开
begin
ADOTable1.Close;
ADOTable1.TableName:='Table1';
DataSource1.dataset:=ADOTable1;
ADOTable1.Open;
end;
form2:
begin
ADOTable1.Close;
ADOTable1.TableName:='Table2';
DataSource1.dataset:=ADOTable2;
ADOTable1.Open;
end;
肯定可以的!!
还有对
ADOTable1.Close;
ADOTable1.TableName:='table1';
ADOTable1.Open;
Form1中的一个DBEdit1.DataFiled:='s1';
Form2中将
ADOTable1.Close;
ADOTable1.TableName:='table2';
ADOTable1.Open;
Form2中的一个DBEdit2.DataFiled:='s2';
ADOTable1.Close;
ADOTable1.TableName:='Table1';
ADOTable1.Open;
end;
我告诉你,小伙子。。小哥哥爱因斯坦说得。。简单就是美你动态得改变,目的无非是想节省资源。可你这样少用几个TABLE根本节省不了什么资源。。
动态得东西,用得好 ,有美丽得一面,如果滥用,就是恐龙。。