Az ébresztőóra, a delphi programozó blogja
Ebben a cikkben szeretnék beszélni arról, hogyan lehet ébresztőórát készíteni. Igen, tudom, hogy az internet tele van ilyen példákkal és az összes ilyen szoftver a számítógépen formájában riasztások „napominalok”, és így egy hatalmas összeg formájában kész és profi, de úgy döntöttem, hogy tegyen valamit a maguk számára. Ez természetesen nagyon egyszerűen szervezett lesz, és kizárólag magamnak és kiváltságaimnak tettem. Végtére is, amikor lefekszem, mindig bekapcsolom a lejátszót egy csomó zenei albummal a laptopomon. Nos, például nagyon kényelmes számomra, hogy elaludtam a zenére, és azt hiszem, sokan is. Tehát egész éjjel zenélni - ez nem így van, mert az éjszaka közepén felébredhetsz. Tehát úgy döntöttem, hogy ezt úgy állítom be, hogy beállíthatja az ébresztést, amikor a zenét kikapcsolják, vagy inkább nem kapcsolják le, hanem egyszerűen kikapcsolják a rendszer hangját a számítógépen. Nos, akkor is beállíthatja az ébresztést, ha a zene éppen ellenkezőleg - bekapcsol, vagyis normál ébresztőóra keletkezik. Például állítsa be az időt, hogy 12:00-01:00 Reggel a zene lejátszása, és ki volt kapcsolva a reggeli, és 07:00 a zene is (ez az, amit tettem magam). Igen, persze, tudom, hogy meg tudom csinálni a segítségével a vizuális elemek (TMediaPlayer), a könyvtárat használó (bass.dll), hogy van, hogy a játékosok, és a stop, lejátszás és így tovább. De úgy döntöttem, hogy megcsinálom - nos, nagyon egyszerű. A JetAudio lejátszót használom. ahol, ha a lejátszási lista befejezi, akkor kezd újra játszani, így nem kell aggódnia, hogy hirtelen riasztó megszólal abban a pillanatban, amikor a lejátszó leállított (vagyis az összes számot játszottunk).
Igen, azt is szeretném mondani, hogy mindez a saját időzítő használatával is elvégezhető, de úgy döntöttem, hogy a függést a számítógép rendszerszabályától függően végezzük. Mi egyszerűen ellenőrizzük, hogy a felhasználó által megadott időértékek megfelelnek-e a számítógép rendszerszintének. A projektemben telepítettem a TPageControl-t, és létrehoztam két lapot - Audio és Alarm. Az Audió fülön megadhatjuk az időzítést, amikor ki kell kapcsolnunk a zenét, és a Riasztások lapon beállítjuk az időt, amikor ébresztőóraként bekapcsoljuk a zenét. Ezen a két lapon 6 TSpinEdit telepítettem. 3-án és mindegyiken. Bennük az idõt az óra, a percek és a másodpercek formája szerint állítjuk be. A formanyomtatványunk OnShow eseményével elkezdjük írni a kódot, amely elolvassa a rendszer időtartamát a program indításakor, így a felhasználó akkor is telepítheti magát, amikor az ébresztőóra kikapcsol. Ehhez a FormatDateTime funkciókat használjuk. és maga a kód lesz a következő
Ezután együttműködünk az Audió fülön. TTimer-t adunk hozzá. valamint egy gomb megnyomásával, amelyre kattintva beállítjuk az időt, és elindítjuk az időzítőt, amely figyelemmel fogja kísérni a rendszer hangjának kikapcsolását. Igen, ne felejtsük el beállítani az Engedélyezett tulajdonságot a TTimer False-ban. A Telepítés gomb mellett aktiváljuk az időzítőnket, vagyis az Engedélyezve értéket True értékre állítjuk. és az OnTimer eseményen a következő kódot írjuk
Igen, majdnem elfelejtettem, csatlakoztatnunk kell az MMSystem modult a Uses-ban. ebből a modulból szükségünk van a waveOutSetVolume függvényre. amellyel kivonjuk a rendszer hangját (állítsuk be 0-ra). Azaz, amint láthatjuk, mi minden második ellenőrzés ideje a felhasználó által megadott, a rendszer időt a számítógép, ha ez egy véletlen egybeesés, hogy a segítségével waveOutSetVolume funkcióval tudjuk beállítani a rendszer hangot 0 (a hangerő 0), és a játékos továbbra is játszani a dalokat, de mi már nem hallottak. Tehát most elaludtam a zenére. Ha szükségem van ébresztőóra, akkor megyünk az ébresztőóra fülre. 3 TSpinEdit is telepítve van. és telepítsen még egy TTimeret. az Engedélyezett tulajdonságban. amelyet szintén telepítünk False-ba. Az Install gombra kattintva aktiváljuk a TTimer programot is. azaz az Engedélyezve értéke True. És a TTimerünk OnTimer eseményén. amely felelős az ébresztőórától (zenei felvétel), írja be a következő kódot
Azaz, amint látható a szolgáltatás, azt is ellenőrizze az időt a felhasználó által beállított, a rendszer időt számítógépet, ha egyezik, akkor a waveOutSetVolume függvény beállítja a hangerőt a maximumra, ennek eredményeként, mert a játékos nem hagyja abba a játékot, továbbra is játszani egy dalt, és már halljuk őket (attól függően, hogy mennyire alszik).
A zene kikapcsolása a folyamat befejezésével lehetséges. Vagyis befejezheted a játékos folyamatát, de az ébresztőórával valami különlegeset kell gondolnod. Nos, ezt a nagyon egyszerű ébresztőórát csináltam magamnak, amit most használok. Itt vannak a képernyőképek:
A cikk forrásai itt tölthetők le (teljes projekt)