- Delphiartiklar, tips, forum, länksamling - 

      

START | DELPHI | LÄNKARGÄSTBOK 




 Forum

Grundkurs
  »Introduktion
  »Snabbguide
  »Komponenter
  »Händelser
  »Strängar
  »Räkna med Delphi   »Egna typer
  »Selektion
  »Iteration
  »Menyer
  »Funktioner
  »Arraystrukturer

Tips & Tricks
  »Nya tips
  »Blandat
  »Databaser
  »Filer
  »Forms
  »Grafik
  »Internet
  »Komponenter
  »Matematik
  »Multimedia
  »Objekt/ActiveX
  »Skrivare
  »Strängar
  »System
  »Mest lästa tips

Artiklar
  »Delphi och ADO
  »Bygga en DLL
  »Skapa en enkel rapport
  »Hantera registret
  »Enheter, units
  »Klassen TCanvas
  »Använd LookUp Controls

 Nya tips
 Lägg till tips
 Delphilänkar
 Gästbok

 

Stäng ett formulär animerat Kategori: Forms
Inlagt: 2004-11-09
Läst: 1332
Inlagt av: Staffan Berg
Beskrivning
Detta exempel animerar ett formulär vid stängningsögonblicket. 
Kod
var 
 tutup: Boolean; 
 i: Integer; 
 
procedure TForm1.Timer1Timer(Sender: TObject); 
var 
 reg1, reg2: hrgn; 
begin 
 if tutup = True then 
 begin 
  i := i + 10; 
  reg1 := CreateRoundRectRgn(0 + i, 0 + i, Width - i, Height - i, 20, 20); 
  SetWindowRgn(Handle, reg1, True); 
 end; 
 
 if i >= Width then 
 begin 
  tutup := False; 
  i := 1; 
 end; 
 
 if tutup = False then 
 begin 
  i := i + 10; 
  reg1 := CreateRectRgn(0, 0, (Width div 2) - i, Height); 
  reg2 := CreateRectRgn((Width div 2) + i, 0, Width, Height); 
  CombineRgn(reg1, reg1, reg2, rgn_or); 
  SetWindowRgn(Handle, reg1, True); 
  if i >= Width div 2 then 
  begin 
   tutup := True; 
   i := 1; 
  end; 
 end; 
end; 
 
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); 
var 
 reg1: hrgn; 
begin 
 i := 1; 
 timer1.Enabled := True; 
 if MessageDlg('Exit now ?', 
  mtConfirmation, [mbYes, mbNo], 0) = mrYes then 
  CanClose := True 
 else 
 begin 
  CanClose := False; 
  timer1.Enabled := False; 
  reg1 := CreateRoundRectRgn(0, 0, Width, Height, 0, 0); 
  SetWindowRgn(Handle, reg1, True); 
 end; 
end; 
 
procedure TForm1.FormCreate(Sender: TObject); 
begin 
 tutup := True; 
 timer1.Enabled := False; 
end; 

 
 
© Copyright 2005 - Staffan Berg
- Alla rättigheter förbehålles -