unit Unit3;
////////////////////////////////////////////////////////////////////////////////
// Splash Beispiel mit Alphablending (Ein- und Ausblenden)
// written in 2005 by MaBuSE for [url]www.delphipraxis.net[/url]
////////////////////////////////////////////////////////////////////////////////
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm3 =
class(TForm)
Shape1: TShape;
// optisch, keine Funktion
Label1: TLabel;
// optisch, keine Funktion
procedure FormShow(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormClose(Sender: TObject;
var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form3: TForm3;
implementation
{$R *.dfm}
procedure TForm3.FormCreate(Sender: TObject);
begin
// Wird beim Create aufgerufen
BorderStyle := bsNone;
FormStyle := fsStayOnTop;
Position := poMainFormCenter;
Color := clRed;
// :-)
end;
procedure TForm3.FormShow(Sender: TObject);
begin
// Wird beim Show aufgerufen, aber Form ist noch nicht sichtbar
Form3.AlphaBlendValue := 0;
Form3.AlphaBlend := true;
// Form ist nun trasparent (=unsichtbar)
end;
procedure TForm3.FormActivate(Sender: TObject);
var
i: Integer;
begin
// wird aufgerufen, wenn Form auf dem Schirm "sichtbar" ist. (ist ja noch transparent)
// In Schleife einblenden
for i := 0
to 255
do
begin
Form3.AlphaBlendValue := i;
Application.ProcessMessages;
end;
sleep(500);
// eine halbe Sek. warten (kann natürlich entfernt werden)
end;
procedure TForm3.FormClose(Sender: TObject;
var Action: TCloseAction);
var
i: Integer;
begin
// Wenn Form geschlossen wird, ausblenden und "Self.Free" machen
for i := 255
downto 0
do
begin
Form3.AlphaBlendValue := i;
Application.ProcessMessages;
end;
Action := caFree;
end;
end.