P
publicnews
Unregistered / Unconfirmed
GUEST, unregistred user!
1:
我在DataModule中放了一些AdoTable对象,如AdoTable1和AdoTable2,在DataModule的Destroy中我定义了
if AdoTable1.Active then AdoTable1.Close;
AdoTable1.free;
if AdoTable2.Active then AdoTable1.Close;
AdoTable2.free;
如果我在程序中使用过AdoTable1则释放的时候释放AdoTable1就不会出错,而释放到AdoTable2就会出错.
请问DataModule是如何管理这些对象的生命周期的
2:
另外我在其它使用到DataModule对象的窗体上对这些数据对象是这样访问的:
if DataModule.AdoTable1.Active=False then
begin
DataModule.AdoTable1.Open;
DataModule.AdoTable1.Tag:=DataModule.AdoTable1.Tag+1;
end;
当窗体结束时执行:
DataModule.AdoTable1.Tag:=DataModule.AdoTable1.Tag-1;
if DataModule.AdoTable1.Tag=0 then DataModule.AdoTable1.Close //当没有其它窗体引用时就关闭对象,以释放资
源
请问这种访问方法正确吗?
3:
我将用到的数据集对象放在一个DataModule上,而将Connection与图标等其它资源放在另一个DataModule上,这样做是否
可行,与所有都放在一个DataModule上,哪种更好?
4:
其它窗体使用DataModule上的AdoConnection对象,但我在使用中发现这样的问题:
我的DataModule不是设置的自动创建,而是在登录窗体中创建,如ataModule1:=TDataModule1.Create;
我在设计期为了方便获取字段将AdoDataModule的AdoConnection设置了连接属性,在其它单元中直接将AdoTable的Conne
ction指向这个AdoConnection;但在程序运行时发现AdoTable的Connection并不是指向的我所创建的DataModule1,也就
是说设计期指向的那个DataModule的Connection并不是我创建的DataModule1的AdoConnection,为什么?我明明将其从自
动创建列表中移去了,为什么还存在?
我在DataModule中放了一些AdoTable对象,如AdoTable1和AdoTable2,在DataModule的Destroy中我定义了
if AdoTable1.Active then AdoTable1.Close;
AdoTable1.free;
if AdoTable2.Active then AdoTable1.Close;
AdoTable2.free;
如果我在程序中使用过AdoTable1则释放的时候释放AdoTable1就不会出错,而释放到AdoTable2就会出错.
请问DataModule是如何管理这些对象的生命周期的
2:
另外我在其它使用到DataModule对象的窗体上对这些数据对象是这样访问的:
if DataModule.AdoTable1.Active=False then
begin
DataModule.AdoTable1.Open;
DataModule.AdoTable1.Tag:=DataModule.AdoTable1.Tag+1;
end;
当窗体结束时执行:
DataModule.AdoTable1.Tag:=DataModule.AdoTable1.Tag-1;
if DataModule.AdoTable1.Tag=0 then DataModule.AdoTable1.Close //当没有其它窗体引用时就关闭对象,以释放资
源
请问这种访问方法正确吗?
3:
我将用到的数据集对象放在一个DataModule上,而将Connection与图标等其它资源放在另一个DataModule上,这样做是否
可行,与所有都放在一个DataModule上,哪种更好?
4:
其它窗体使用DataModule上的AdoConnection对象,但我在使用中发现这样的问题:
我的DataModule不是设置的自动创建,而是在登录窗体中创建,如ataModule1:=TDataModule1.Create;
我在设计期为了方便获取字段将AdoDataModule的AdoConnection设置了连接属性,在其它单元中直接将AdoTable的Conne
ction指向这个AdoConnection;但在程序运行时发现AdoTable的Connection并不是指向的我所创建的DataModule1,也就
是说设计期指向的那个DataModule的Connection并不是我创建的DataModule1的AdoConnection,为什么?我明明将其从自
动创建列表中移去了,为什么还存在?