Dieser Artikel teilt die JAVA -Implementierung der Dynamic Takteinstellung Wecker für Ihre Referenz. Der spezifische Inhalt ist wie folgt
Zeigt die dynamische Uhr an, wie in der obigen Abbildung gezeigt, und kann den Alarm für MP3 einstellen.
Das erste, was zu verwenden ist, sind die Uhr (Timer) und den Kalender (Kalender), um die aktuelle Zeit des Systems zu erhalten.
Der Code ist wie folgt:
importieren java.awt.graphics; Import Java.awt.Graphics2d; Import Java.awt.geom.ellipse2d; import Java.awt.geom.line2d; import Java.io.BufferedInputStream; Import Java.io.file; import Java.io.FileInputStream; importieren java.io.ioException; Import Java.util.Calendar; Import Java.util.gregoriancalendar; import Java.util.timer; import Java.util.timertask; Import Javax.Media.Cannotrealizexception; import Javax.Media.Manager; import Javax.Media.Medialocator; import Javax.Media.NoPlayerException; importieren javax.swing.jframe; import Javax.swing.joptionpane; import Javax.swing.jpanel; importieren javazoom.jl.player.player; Public Class Clock erweitert JFrame {Mypanel ClockPanel; Ellipse2d.double e; int x; int y; Line2d.double stoundline; Line2d.double minline; Line2d.Double Secondline; Gregoriancalendar -Kalender; int Stunde; int Minute; int zweiter; String timestr = ""; statische Int Sethour; statische int setminute; statische int -setsecond; öffentliches statisches Finale int x = 60; öffentliche statische endgültige int y = 60; public static final int x_Begin = 10; öffentliches statisches endgültiges int y_begin = 10; öffentliches statisches Final int Radian = 50; public Clock () {setSize (300, 200); settitle ("dynamische Uhr"); clockPanel = new mypanel (); add (clockpanel); Timer t = neuer Timer (); Task Task = new Task (); T.Schedule (Aufgabe, 0, 1000); // einmal jede Sekunde aktualisieren} Datei = neue Datei ("wenn ich dich vermisse.mp3"); public static void PlayMusic (Dateidatei) {// den absoluten Pfad der MP3 -Datei versuchen {javax.media.player Player = null; if (file.exists ()) {medialocator locator = new medialocator ("Datei:" + file.getabsolutepath ()); System.out.println (file.getabsolutepath ()); Player = Manager.CreateRealized Player (Locator); Player.prefetch (); // 新 ist bereit, Player zu lesen }} catch (kann nichtrealizeexception ex) {ex.printstacktrace (); } catch (noplayerException ex) {ex.printstacktrace (); } catch (ioException ex) {ex.printstacktrace (); }} public void Play () {// MP3 -Datei abspielen {bufferedInputStream buffer = new buferedInputStream (neuer FileInputStream ("Wenn ich dich vermisse.mp3"); Player Player = neuer Spieler (Buffer); Player.play (); } catch (Ausnahme e) {System.out.println (e); }} public static void main (String [] args) {clock t = new Clock (); t.setDefaultCloseOperation (jframe.exit_on_close); t.setvisible (true); //t.setLocationRelativeto(null); // Formular wird in der Mitte des Bildschirms angezeigt. setMinute = integer.parseInt (joptionpane.showInputDialog ("Bitte Minuten eingeben:")); setSecond = integer.parseInt (joptionpane.showInputDialog ("Bitte Sekunden eingeben:")); } class mypanel erweitert jpanel {public mypanel () {e = new ellipse2d.double (x_Begin, y_begin, 100, 100); stoundline = new line2d.double (x, y, x, y); minline = new Line2d.double (x, y, x, y); SecondLine = new Line2d.double (x, y, x, y); } public void PaintComponent (Grafik g) {Super.PaintComponent (g); Graphics2d G2 = (Graphics2d) g; G2.Drawstring ("12", 55, 25); // Anlasszeit G2.Drawstring ("6", 55, 105); G2.Drawstring ("9", 15, 65); G2.Drawstring ("3", 100, 65); G2.Drawstring (Timestern, 0, 130); G2.Draw (e); G2.DRAW (stündliche); // Hour Hand G2.Draw (Minline); // Minute Hand G2.Draw (Secondline); // Second Hand}} Klasse Extendes timertask {public void run () {calendar = new Gregoriancalendar (); Hour = Calendar.get (Calendar.Hour); Minute = Calendar.get (Calendar.minute); Second = Calendar.get (calendar.second); if (Sethour == Hour && setminute == Minute && setSecond == zweiten) {PlayMusic (Datei); spielen(); } Timestr = "Aktuelle Zeit:" + Hour + ":" + Minute + ":" + Sekunde; Hour.x2 = x + 40 * Math.cos (Stunde * (math.pi / 6) - math.pi / 2); stoundline.y2 = y + 40 * math.sin (stunde * (math.pi / 6) - math.pi / 2); minline.x2 = x + 45 * math.cos (minute * (math.pi / 30) - math.pi / 2); minline.y2 = y + 45 * math.sin (minute * (math.pi / 30) - math.pi / 2); Secondline.x2 = x + 50 * math.cos (Second * (math.pi / 30) - math.pi / 2); Secondline.y2 = y + 50 * Math.sin (Second * (math.pi / 30) - math.pi / 2); Repaint (); }}} Das Abspielen der MP3 -Datei erfordert das Herunterladen des entsprechenden JAR -Pakets, ansonsten kann es nicht abgespielt werden.
Download -Adresse: Java implementiert dynamische Uhr
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.