Neler yeni
Türkiye'nin En Güncel Forum Sitesi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı yada giriş yapmalısınız. Forum üye olmak tamamen ücretsizdir.

Delphi Ekran Koruyucu Yapımı

ByOnur58

Kayıtlı Üye
MFC Üyesi
  • Üyelik Tarihi
    7 Ocak 2015
  • Mesajlar
    2,113
  • MFC Puanı
    10
  • MFC Seviyesi

Ekran koruyuculari normal bir program gibi yazilir. Derlenirken uzantisi SCR olarak kayit edilir. Windows ekran koruyucuyu çalistirirken bazi özel komut satiri parametreleri kullanir.
* Alt + Tab ve Ctrl+Alt+Del Tuslarini önleyecek olan kod satiri :
SystemParametersInfo(SPI_SCREENSAVERRUNNING,1,0,0) ; * Baslat Çubugunu gizleme
ShowWindow(FindWindow('Shell_TrayWnd',nil),SW_HIDE ); * Fare' nin gizlenmesi
ShowCursor(false); * Fare ve Klavyeden bir olay yapildiginda ekran koruyucuyu sonlandirma
if ((ox=0) and (oy=0)) or ((Abs(ox-x)<5) And (Abs(oy-y)<5)) Then * Formun tam ekran haline getirilmesi
Object Inspector' den WindowState / wsMaximized yapilir.* Ekran koruyucu uygulamasi SCR olarak kaydedilmesi
Project / Options / Application

Target file extersesion SCR yapilir ve OK dügmesine tiklanir.ÖRNEK: Bir ekran koruyucu.
KODU:

Kod:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
SystemParametersInfo(SPI_SCREENSAVERRUNNING,0,0,0);
ShowCursor(true);
ShowWindow(FindWindow('Shell_TrayWnd',nil),SW_show);//baslati göster
end; 
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ((ssAlt in Shift) and (Key = VK_F4)) then Key := 0;
if ((ssAlt in Shift) and (Key = VK_TAB)) then Key := 0;
end;
{$J+}
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
const ox:integer=0; oy:integer=0;
begin
if ((ox=0) and (oy=0)) or ((Abs(ox-x)<5) And (Abs(oy-y)<5)) Then
begin
ox:=x;
oy:=y;
ShowCursor(false);
end else 
begin
ShowCursor(true);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
image1.Left:=random(400);
image1.top:=random(500);
end;
 
Üst Alt