gpt4 book ai didi

delphi - Delphi 中以编程方式启动屏幕

转载 作者:行者123 更新时间:2023-12-03 14:47:56 26 4
gpt4 key购买 nike

在 Delphi 中实现闪屏的最佳方法是什么?

最佳答案

创建一个表单,将其设置为FormStyle = fsStayOnTop,将其边框样式设置为无,将标题设置为空白。这将创建一个顶部没有标题栏的表单。将 TImage 拖放到表单上并将位图加载到其中。

在表单上放置一个 TTimer(这将用于确保启动屏幕保持至少一段时间。

这是我的初始表单中的代码:

TSplashForm = class (TForm)
Image1: TImage;
CloseTimer: TTimer;
procedure CloseTimerTimer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
private
FStartTicks: integer;
FOKToClose: boolean;
public
property OKToClose: boolean read FOKToClose write FOKToClose;
end;

var
SplashForm: TSplashForm;

在表单创建中:

procedure TSplashForm.FormCreate(Sender: TObject);
begin
FStartTicks := GetTickCount;
end;

procedure TSplashForm.CloseTimerTimer(Sender: TObject);
const
CTimeout = 3000;
begin
if (GetTickCount - FStartTicks > CTimeout) and OKToClose then
Close;
end;

procedure TSplashForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;

procedure TSplashForm.FormDestroy(Sender: TObject);
begin
SplashForm := nil;
end;

在您的项目文件中,执行如下操作:

begin

SplashForm := TSplashForm.Create(nil)

Application.Initialize;
Application.Title := 'My Program';

//create your forms, initialise database connections etc here
Application.CreateForm(TForm1, Form1);

if Assigned(SplashForm) then
SplashForm.OkToClose := True;

Application.Run;

end.

(大部分代码都是我凭空写下来的,它可能无法立即编译)

关于delphi - Delphi 中以编程方式启动屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3359638/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com