|
DERS ANLATIMI EKRAN
KORUYUCU |
|
EKRAN
KORUCU
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 :
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;
|
|
|
|
|
|
|