zoukankan      html  css  js  c++  java
  • 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.
    
    
  • 相关阅读:
    表格文字溢出用省略号代替处理方法
    【Linux】Mysql5.7.12源码编译安装及配置
    【Linux】JDK安装及配置
    [SDOI2017]序列计数
    P1777 帮助_NOI导刊2010提高(03)
    BSGS和EXBSGS
    排列最小值
    三元组[01 Trie计数]
    数学题
    The Preliminary Contest for ICPC Asia Xuzhou 2019 E XKC's basketball team [单调栈上二分]
  • 原文地址:https://www.cnblogs.com/hydonlee/p/1459425.html
Copyright © 2011-2022 走看看