Delphi - Képernyővédő alkalmazás készítése

forráskód letöltése
Ebben a cikkben példát láthatunk arra, hogy miként lehet készíteni olyan alkalmazást, amelyet képernyővédőként lehet futtatni. Ebben a cikkben példát láthatunk arra, hogy miként lehet készíteni olyan alkalmazást, amelyet képernyővédőként lehet futtatni.

A képernyővédő tulajdonképpen ugyanúgy készül, mint egy rendes program. Használatához az elkészült EXE kiterjesztést át kell nevezni SCR-re és ezt az állományt el kell helyezni a Windows könyvtárban. Ettől kezdve mikor a képernyő tulajdonságait állítjuk be, akkor már a képernyővédő résznél a mi programunk is választható.

Jelen példában nem készítettünk a programhoz beállító képernyőt, így alkalmazásunkat csak futtatni lehet.

Ahhoz, hogy teljes képernyőn fejléc nélkül fusson a programunk először is a Form BorderIcons property-n belül az összes lehetőséget hamisra kell állítanunk, valamint a BorderStyle property-nél bsNone értéket kell választanunk.

Hogy a Form-on kívül semmi más, még a Windows tálca se látszódjék, célszerű a FormStyle property-t fsStayOnTop értékre állítani.

Végül, hogy a képernyővédőnk teljes képernyő méretű legyen a WindowState property-nél a wsMaximized értéket adjuk meg.

Programunk indulásakor el kell tárolnunk a kurzor aktuális pozícióját. Erre a későbbiek folyamán lesz szükségünk.

Majd ha ez megvan, akkor elrejtjük a kurzort a ShowCursor(false) függvényhívással.

Létre kell hoznunk alkalmazásunk számára egy saját üzenetkezelőt is. Ezt a példaprogramban DoMessage név alatt tettük meg. Ha ugyanis bármilyen felhasználói tevékenységre utaló üzenet érkezik, akkor azonnal be kell fejeznünk a képernyővédő futását.

Mivel az egértől származó üzenet akkor is keletkezhet a program indulása során, mikor azt a felhasználó még nem is mozdította el, így ellenőriznünk kell, hogy a program indulásakor eltárolt kurzor helyzetéhez képest változott-e a pozíciója és ha igen, csak akkor kell bezárnunk az alkalmazásunkat.

Azt hogy a programunk mit rajzol ki a képernyőre futása alatt, azt mindenki saját maga tetszőlegesen elkészítheti. Ebben a példában mi egy TTimer időzítő segítségével véletlenszerű helyen és véletlenszerűen választott színű csillagokat rajzolunk ki a képernyőre.