我创建了一个datamodule,在这个里面加入了ado连接,在form1中调用datamodule,在implementation下面uses引用了datamodule模块,执行form1时为什么没有先执行datamodule   

解决方案 »

  1.   

    什么叫 没有先执行datamodule 
      

  2.   

    datamodule 的意思你明白吗?
      

  3.   

    就是应该先从data module执行,data module中有ado连接数据库,其它form窗体好调用呀
      

  4.   

    查看dpr文件中 datamodule创建的顺序
    app
    把它调到第一位试试
      Application.CreateForm(TDataModule1, DataModule1);
      Application.CreateForm(TForm1, Form1);
      

  5.   

    你没有创建??
    Application.CreateForm(TDataModule1, DataModule1);
    没有执行???
      

  6.   

    Application.CreateForm(TDataModule1, DataModule1);
    这个放在哪里执行?
      

  7.   

    project->options->forms->auto create forms
    把datamodule移到第一位
      

  8.   

    project->options->forms->auto create forms
    把datamodule移到第一位有没有其它的办法?
      

  9.   

    直接编辑 projrect 文件:
    program 项目名称;
    ..
    begin
      Application.Initialize;
      Application.CreateForm(TForm1, Form1);
      Application.CreateForm(TDataMoudle, DM); // 把这一行提到前面
      Application.Run;
    end.
      

  10.   

    Application.CreateForm(TDataMoudle, DM); // 把这一行 去掉
    var dm :TDataMoudle;
    然后在  Form1 的  Create 里面dm := TDataMoudle.create(self);