好的,所以我的应用程序工作得很好,直到我决定通过创建一个 DataModule 表单并将所有数据库组件移动到它来稍微清理设计时表单。我正在使用 Delphi XE2 Update 1 和这些组件,TADOConnection、TADOTable、TADOQuery、TADOCommand。当我第一次尝试使用 DataModule 表单上的上述命名组件而不是主表单运行应用程序时,它现在在执行 DPR 的此行时返回错误:
Application.CreateForm(TDataModule1, DataModule1);
引发的错误是找不到类 TADOConnection。. 现在我删除并重新添加了 TADOConnection 到 DataModule 表单,它现在引发了一个不同的错误:找不到类 TADOTable。,但我认为这只是因为 DataModule 上的创建顺序发生了变化,TADOTable
现在 a 是在表单上创建的第一个对象。
我uses
在 DataModule 中的条款是:
uses System.SysUtils, System.Classes, Data.Win.ADODB, Data.DB;
我阅读了其他帖子,说在 uses 子句中包含 ADODB 和 DB 以克服此错误,但这似乎没有帮助。
我的完整 DPR 文件是:
program Project1;
uses
Vcl.Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {DataModule1: TDataModule};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TDataModule1, DataModule1);
Application.Run;
end.
我什至尝试从创建 DataModule 的 DPR 文件中删除该行并在主窗体中手动执行此操作,但是当我收到相同的错误消息时,它只会改变。
除了将所有组件移回主窗体之外,我不确定接下来要尝试什么。DataModule 表单在 XE2 中的工作方式与 Delphi 的先前版本不同,为什么当组件位于主表单上时,没有出现相同的 TADOConnection 和 TADOTable 类未找到消息?
非常感谢任何想法或见解。
詹姆士