Delphi启动程序的一般步骤

用Delphi开发数据库应用,一般会涉及到闪屏(Splash/封面/Logo)、登录窗口、主数据模块(或主数据库连接)以及主窗口。

看到过不小新手在写的时候,所有form和DataModule全部自动生成,主窗口为第一窗口,在主窗口的OnCreate/OnShow/OnActive/中显示Splash/显示登录窗口等…

这明显是不明智的。由于创建先后的关系,谢谢经常会出现AV错误。

说说以上几个窗口(或模块的作用):

Splash Window:闪屏或封面或LOGO窗口,系统启动后第一个显示的窗口,显示一下LOGO信息。目前很多人会放一个很PP的动画之类,然后sleep几秒. 失去了他的作用。看Photoshop/PDF Reader等,启动时显示这个窗口在做什么?他会加载许多插件,而且这个时间比较长。如果没有窗口来显示加载进度,可能用户会等的不耐烦:这个软件怎么这么慢呢?所以,除了显示一个图片以显示自己专业(目前主流软件貌似都有)之外,还有一个就是在显示这个窗口的时候加载必需的资源,创建需要创建的窗口,连接相应的服务器,检查相关的更新等。

登录窗口:这个就不用说了。系统需要登录后才能操作,所以必须要在使用前登录。

主数据模块:或主数据库连接。这个可能是所有窗口都要用到的(比如登录窗口就可能会用到),这也就需要在登录前初始化好(当然也可以使用时才初始化)

下面推荐一个我常用的启动过程的代码:

//Test.DPR

//CopyRight(c) Hydonlee, 转载请注明出处



var

  frmMain: TfrmMain;

  dmMain: TdmMain;

begin

  Application.Initialize;

  //显示封面

  SplashF.Show;

  try

    //创建需要的资源

    Application.CreateForm(TdmMain, dmMain);

    Application.CreateForm(TfrmMain, frmMain);

    //...其它

  finally

    SplashF.Close;

  end;

  

  //登录

  if LoginF.Login() then

    Application.Run;

end.



 

你可能感兴趣的:(Delphi)