Czy widzieliście nieraz aplikacje, które przy zamknięciu robiły się stopniowo przeźroczyste aż w końcu aplikacja zostaje zamknięta? Poniższy kod prezentuje jak można  to zrobić korzystając z wbudowanych narzędzi Delphi.

procedure TForm1.ZamknijClick(Sender: TObject);
begin
 AlphaBlendValue := 255 ;
 AlphaBlend := True ;
 while AlphaBlendValue > 0 do
 begin
   AlphaBlendValue := AlphaBlendValue -1 ;
   Application.ProcessMessages ;
   Sleep(10);
 end;
 ModalResult := mrOk ;
 Close ;
end;


Ok według życzenia.
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 AlphaBlendValue := 255 ;
 AlphaBlend := True ;
 while AlphaBlendValue > 0 do
 begin
   AlphaBlendValue := AlphaBlendValue -1 ;
   Application.ProcessMessages ;
   Sleep(10);
 end;
end;

Kategoria: Delphi » FAQ

2 komentarze

Brak avatara
Napisany 2010-02-03 17:57 przez Alkuzad

przydałaby się wzmianka dla mniej-zapoznanych, że dobrze takie coś wstawić w onClose formy.

Avatar: koval_s
Napisany 2010-02-08 15:53 przez koval_s

Kolega: Alkuzad, zapomniał jeszcze dodać, że jak się umieści w: onClose, to należy usunąć:  ModalResult := mrOk ; Close ;, ale na pewno chciał to powiedzieć, pozdrawiam...

4programmers.net