В этой статье используется реализация Java динамического настройки часов будильника для вашей ссылки. Конкретный контент заключается в следующем
Отображает динамические часы, как показано на рисунке выше, и может установить будильник для воспроизведения mp3.
Первое, что для использования - это часы (таймер) и календарь (календарь), чтобы получить текущее время системы.
Код заключается в следующем:
импортировать java.awt.graphics; импортировать java.awt.graphics2d; импортировать java.awt.geom.ellipse2d; импортировать java.awt.geom.line2d; Импорт java.io.bufferedinputstream; Импорт java.io.file; импортировать java.io.fileinputstream; импортировать java.io.ioexception; импортировать java.util.calendar; импортировать java.util.gregoriancalendar; импортировать java.util.timer; импортировать java.util.timertask; Импорт javax.media.cannotrealizeexception; Импорт javax.media.manager; Импорт javax.media.medialocator; Импорт javax.media.noplayerexception; импортировать javax.swing.jframe; импортировать javax.swing.joptionpane; импортировать javax.swing.jpanel; Импорт javazoom.jl.player.player; Public Class Clock расширяет jframe {mypanel clockpanel; Ellipse2d.double e; int x; int y; Line2d.double Chourline; Line2d.double minline; Line2d.double вторая линия; Календарь Грегорианкалендар; int час; Int Minute; int второй; String timeStr = ""; статический int sethour; статический int setminute; Статический int setsecond; общественный статический финал int x = 60; общественный статический финал int y = 60; Public Static Final int x_begin = 10; общественный статический окончательный финал int y_begin = 10; общественный статический финал int radian = 50; public clock () {setSize (300, 200); Settitle («Динамические часы»); clockpanel = new MyPanel (); Добавить (ClockPanel); Таймер t = новый таймер (); Задача задачи = новая задача (); t.schedule (задача, 0, 1000); // обновить один раз каждую секунду} file file = new File ("Когда я скучаю по вам.mp3"); public static void playmusic (файл файла) {// Показать абсолютный путь mp3 -файла try {javax.media.player player = null; if (file.exists ()) {medialocator locator = new Medialocator ("file:" + file.getabsolutePath ()); System.out.println (file.getabsolutePath ()); Player = Manager.createrealizedPlayer (локатор); player.prefetch (); // 新 готов читать player.start (); // начать чтение} else {System.out.println ("Нет файла"); }} catch (невозможно realizexception ex) {ex.printstacktrace (); } catch (noplayerexception ex) {ex.printstacktrace (); } catch (ioException ex) {ex.printstackTrace (); }} public void play () {// play mp3 -файл try {bufferedinptream buffer = new BufferedInputStream (new FileInputStream ("Когда я скучаю по вам.mp3")); Игрок игрок = новый игрок (буфер); player.play (); } catch (Exception 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); // Форма отображается в центре экрана // Введите время тревоги, чтобы быть sethour = integer.parseint (joptionpane.showinputdialog («Пожалуйста, введите час:»)); setminute = integer.parseint (joptionpane.showinputdialog («Пожалуйста, введите минуту:»); setSecond = integer.parseint (joptionpane.showinputdialog («Пожалуйста, введите секунды:»)); } класс MyPanel Extends jPanel {public myPanel () {e = new ellipse2d.double (x_begin, y_begin, 100, 100); Dourline = 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 (Graphics G) {super.paintcomponent (g); Graphics2d g2 = (graphics2d) g; g2.drawstring ("12", 55, 25); // время g2.drawstring ("6", 55, 105); G2.DrawString ("9", 15, 65); g2.drawstring ("3", 100, 65); G2.DrawString (TimeStR, 0, 130); g2.draw (e); g2.draw (часовая линия); // часовая рука g2.draw (minline); // минутная рука g2.draw (secondline); // вторая рука}} Задача класса расширяет timertask {public void run () {calendar = new gregoriancalendar (); час = календарь.get (calendar.hour); minute = calendar.get (calendar.minute); второе = календарь.get (calendar.second); if (sethour == hour && setminute == minute && setSecond == second) {playmusic (file); играть(); } timeStr = "Текущее время:" + час + ":" + minute + ":" + second; hour.x2 = x + 40 * math.cos (час * (math.pi / 6) - math.pi / 2); doupline.y2 = y + 40 * math.sin (час * (math.pi / 6) - math.pi / 2); minline.x2 = x + 45 * math.cos (минута * (math.pi / 30) - math.pi / 2); minline.y2 = y + 45 * math.sin (минута * (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 (); }}} Воспроизведение MP3 -файл требует загрузки соответствующего пакета JAR, в противном случае его нельзя воспроизвести.
Адрес загрузки: Java реализует динамические часы
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.