5、保存这个工程。当 Delphi 提示读者提供单元文件名时,要确信当前目录为正确的目录。为 SplashForm 的单
元文件名输入
Splash。
6、将 SplashForm 的 Enabled 属性设置为 False。这里不想让用户能够给窗口提供键盘和鼠标命令,这是极少见
的情况之一。在这个例子中
,我们想让程序对 SplashForm 的显示拥有完全的控制权。
7、由于窗口没有轮廓,所以从 Additional 组件类中插入一个 Bevel 组件对象。这有助于定义窗口的边缘。将
Bevel1 的 Align 属性设置为 alClient。同时,将对象的 Shape 属性改变为 bsFrame,将其 Style 属性改变为 bsRaised。这
些值由使用者来确定。
8、在 SplashForm 中插入想使用的组件,在这里不要插入任何按钮或者其他相互作用的控件。应用程序本身显
示和去除启动溅射对话框。
9、选择 Project 菜单。高亮显示 Splash 工程个弹出式菜单。选择 Options 命令。在所产生的 Project Options 对话
框中
,选取 Forms 页标签。注意,MainForm 和 SplashForm 位于自动创建的窗体列表中。高亮显示每个窗体并单击鼠
标右按钮来将其移动到
Available 窗体。所有的 Delphi 窗体在运行时都是在内存中自动创建的,这要消耗内存和系
统资源。在这样的一个案例中
,程序是在运行时创建窗体的,读者应该从自动创建的列表中删除窗体。关闭
ProjectOptions 窗口。
10、接下来,修改工程的源代码,以便在显示主窗口之前显示溅射对话框。这里需要在工程文件中插入语句,以便与
Splash.dpr 工程文件相匹配。工程源代码如下:
program Project3;
uses
Forms,
main in ‘main.pas‘ {MainForm},
splash in ‘splash.pas‘ {SplashForm};
{$R *.RES}
begin
SplashForm:=TSplashForm.Create(Application);
SplashForm.Show;
SplashForm.Update;
Application.CreateForm(TMainForm,MainForm);
SplashForm.Close;
Application.Run;
end.
11、如果这时编译和运行程序,它就非常快速地显示和去除启动溅射对话框,以至用户可能没机会见到它。为了
强迫对话框保持几秒钟的可见时间
,请选取程序的 MainForm。为窗体的 OnCreate 命令创建一个处理器。在关键词
的前面添加一个名为
stopTime 的长整型变量。在 begin 和 end 之间插入两个语句:一个为对 Windows GetTickCount
函数的调用。来将
stopTime 设置为 Windows 已在运行的秒数;另一个语句为 while 语句,这个语句另外延迟 2 秒钟。
程序清单如下
:
unit main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TMainForm = class(TForm)
Exitbutton: TButton;
procedure ExitbuttonClick(Sender: TObject);
procedure FormCreate(Sender: TObject);