Riasztás hang c # - programozás C, C # és java
Ebben a cikkben fogjuk részletesen elemezni, hogyan lehet létrehozni egy programot, ébresztőóra hanggal C # a Windows Forms.
A kezdéshez hozzon létre egy űrlapot. Úgy néz ki, mint ez:
Itt írd ide ilyen tulajdonságokkal
Ébresztő hang C # - vscode.ru
Rajta fogjuk mutatni az aktuális időt.
Alul van egy MaskedTextBox. MaskedTextBox'a Ellentétben az egyszerű TextBox'a hogy be lehet állítani egy maszkot, amely segít a felhasználónak, hogy adja meg a helyes adat típusát.
Beállítás MaskedTextBox'a a következő. Ebben az elemben, annak elosztása a jobb felső sarokban van egy kis nyíl. Ha megnyomja a felugró ablakban, az alábbiak szerint. Kattintson a „Beállítás a maszkot.”
A MaskedTextBox fogjuk adja meg az ébresztés idejét. Minden szabványok, az idő mindig látható a vastagbél - óra: perc: másodperc. Egyértelmű, hogy minden alkalommal, amikor a felhasználó a levelet vastagbél óra és perc közötti nagyon kellemetlen, ezért könnyen neki, hogy adatbeviteli ablakban után kattintson a „beállítása” maszkot válassza Idővonal. Ő azonnal fordította a felhasználó által bevitt adatok DateTime formátumban, és nem is fog szórakozni a vastagbélben óra és perc közötti.
Kattintson az "OK" gombot. Most, hogy terjesszen az időt, a felhasználónak meg kell adnia négy számjegy. Az első két - egy óra, az utolsó két - percében.
Szintén a „Tulajdonságok” a MaskedTextBox'a megváltoztattuk a szöveg méretét:
Kevesebb MaskedTextBox'om rejtettük Label2:
Szükségünk van rá, annak érdekében, hogy értéket MaskedTextBox'a. és ennek alapján, az egyik időzítő információt szerezni, ha kell a riasztás gyűrűket.
Ezután jönnek két Button'a - az első indul az ébresztőóra, és egy második, hogy kapcsolja ki, amikor egy hívás indítása.
Is hozzá két Timer'a. Az első időt fogja mutatni, és a második lesz felelős azért, hogy a riasztó megszólal idején.
A tervezési érteni. Ezután jobb klikk a forma, és válassza ki a „View Code”.
Először csatlakoztassa a könyvtári munka hanggal:
Először állapítsa meg az első időmérő, mert mi lesz látni, és akkor meg kell adni a megjelenése normális.
Következő, hogy egy változót, amely azt fogja indítani a megfelelő időben dallamot. Ebben az esetben a dallam a F meghajtót, és a fájl maga hívják 1.wav.
Alapvető olvasás: System.Media könyvtár csak dolgozni PCM WAV formátumban. Ellenkező esetben hiba lesz a programban. Az interneten sok program, hogy átalakítja a zenei fájlokat ebben a formátumban, és a méret önmagában még mindig lehet találni a hatalmas hálózat, mindaddig, amíg ez digitalizálva lett használva PCM.
mi is, hogy egy változót típusú bool (csak két állam - igaz és hamis). Szükségünk van rá, hogy megváltoztassák az elvet a „Fogadj Service” gombot. Később fogjuk rendelni ezt a gombot a második „állam” - „Törlés Service”, amikor felszámolják. Tehát, ha rákattint egy gombra különböző értékeire b, ez a gomb elvégzi egy másik munkát.
Ez a három változó megtanultuk az alapját a kódot minden olyan funkciót, tovább férhet hozzájuk, mert ha például, hogy egy változót a bool b semmilyen különleges funkciót, akkor más funkciók nem lesz képes eljutni ez a változó hozzáférés, egyszerűen nem fogja megtalálni.
Ezután visszatérünk a forma és a dupla kattintás rá a bal egérgombbal, hogy menjen vissza a helyszínre, hogy töltse le a kód formájában. Odaírva a kód kerül végrehajtásra, ha az űrlap betöltésekor, hogy van, azonnal, amikor a program elindul. Ott mi írjuk a következőket:
Húr button2.Enabled = false kizárja a „Stop Service”. Tettük ezt annak érdekében, hogy a felhasználó nem kattint rá idő előtt. Később mi teszi kattinthatóvá alatt indítási ébresztőórát, így megállítani őt.
Timer01.Interval == sor 1000-ben, bejelentjük, hogy a timer felelős az aktuális idő lesz frissítve formájában 1000 milliszekundum (más szóval, minden második). Szükségünk van erre, mint ahogy azt az elmúlt két Label'e „szimbólum” félre egy pillanatra.
A következő sor azt jelzi, hogy az időzítő fog reagálni, és működik a rendezvény „Tick”. Tick esemény az alábbiakban ismertetjük, ott jelzi, hogy Label'e kell az időt mutatja. Más szóval, köszönhetően timer01 .Interval időzítő lesz minden második alkalom, hogy a frissítés végrehajtásához esemény Label'e. Használata timer01.Tick.
Nos, végül indítunk a stoppert. Az űrlap azonnal terhelhető ő fogja mutatni az aktuális időt.
Most megint mi formában, és kattintson duplán a az oldal alján.
Ez megnyitotta a kódrészletet nevű timer1_Tick. Ez a kód, amit most írni a szervezetben ez a funkció másodpercenként frissülő formában.
Mint korábban említettük, itt mi származik a Label1 az aktuális időt. Belül a függvény törzsében timer1_Tick write:
Először írunk az órát, majd percig, majd másodperc. Része a kódot felelős az órát néz ki: DateTime.Now.Hour.ToString ( „00”). Szó, durván lefordítva „Vremya.Seychas.Chasy.Strokoy”, azaz, mi származik az aktuális órák száma egy sorban (kezdetben ezek az értékek már datetime típus, úgyhogy mindet le kell fordítani a string). Ugyanez az írás percig (ahelyett, hogy csak Hour - perc) és a második (második). Köztük írunk vastagbél korunk nem tapadnak egy számot és jól olvasható.
De mi van a zárójelben nullákkal? Írunk ezt úgy, hogy időben jelenik meg a szokásos formátumban: 0:00:00. Ezek nélkül nullák például 09:00, 5 perc és 14 másodperc alatt meg fog jelenni a program a következő: 9.5.14. Ez egy kicsit fáj a szeme, ezért hozzá nullát az értékek az idő, ami rögzített egyszámjegyű (azaz minden szám kevesebb, mint tíz). Így az idő jelenik meg, mint 09/05/14, és ez sokkal szebb. Más szóval, ha jelenleg egy kétjegyű időt, például 12 óra helyett a kezdő nulla van írva, de ahelyett, hogy egy második - 2. Ha egyszerre - 05:00, az első nulla érintetlen marad, de ahelyett, hogy a második számjegy 5 van írva. Hasonlóképpen töltött és percben és másodpercben.
Tehát a timer mutatja az időt dolgozni. Menj előre -razbiraemsya gomb „A szolgáltatás elindítása.” E célból formájában kattintson rá duplán.
Itt meg kell változtatni a bullevaya b. Meggyőződhetünk arról, hogy ha ezt a gombot megnyomja volt lehetséges, hogy az ébresztőóra, és távolítsa el a gyárból.
Nézd meg az alakja lesz, mint ez:
Ez a gomb függően az adott helyzettől, elvégzi két ellentétes intézkedéseket. Most írunk az első alkalom, hogy mi lesz, hogy van egy ébresztőóra. Ha megnyomja a gombot, akkor elkezd egy másodperces időzítővel elkezdi mérni óra, perc, másodperc, amíg az idő, hogy meghatározott maskedTextBox'e. hozzáférés maskedTextBox'u zárva lesz, amíg meg nem nyomja a gombot (lehetetlen volt, hogy módosítsa a már megadott időben, amíg az ébresztőórát seb), és a szöveg a gomb átvált „szolgáltatás törlése”.
A gomb lenyomásával leállítja a dallamot, majd a „Stop Service” ismét elérhetővé válik (akár az új üzem és az új riasztási dallam lejátszása) visszatér MaskedTextBox1. ami nem volt, mert mint tudjuk, amikor a gyár bujkál, hanem továbbra is Label2. Szöveg a az üzem / hatástalanítsa a riasztó változások „Start a Service”, és b értéke hamis lesz (úgy, hogy ha rákattint a „Create a ébresztőóra,” azt akarja, hogy töltse be a kódot.
Ez a kód működik, akkor nézd meg az alábbi linket: