บทความนี้แบ่งปันการใช้งาน 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; นาฬิการะดับสาธารณะขยาย JFrame {MyPanel Clockpanel; Ellipse2d.double E; int x; int y; line2d.double ชั่วโมง; line2d.double minline; line2d.double secondline; ปฏิทิน Gregoriancalendar; ชั่วโมง int; Int นาที; int วินาที; String timestr = ""; sethour int คงที่; setminute int คงที่; setsecond int คงที่; public Static Final Int x = 60; สาธารณะคงที่สุดท้าย int y = 60; public Static Final Int X_Begin = 10; สาธารณะคงที่สุดท้าย int y_begin = 10; public Static Final Int radian = 50; นาฬิกาสาธารณะ () {setsize (300, 200); Settitle ("นาฬิกาแบบไดนามิก"); clockPanel = myPanel ใหม่ (); เพิ่ม (clockpanel); ตัวจับเวลา t = ตัวจับเวลาใหม่ (); งานงาน = งานใหม่ (); t.schedule (task, 0, 1000); // รีเฟรชหนึ่งไฟล์} ไฟล์} ไฟล์ = ไฟล์ใหม่ ("เมื่อฉันคิดถึงคุณ. mp3"); โมฆะสาธารณะคงที่ playmusic (ไฟล์ไฟล์) {// แสดงเส้นทางสัมบูรณ์ของไฟล์ mp3 ลอง {javax.media.player player = null; if (file.exists ()) {medialocator locator = new medialocator ("ไฟล์:" + file.getabsolutepath ()); System.out.println (file.getabsolutepath ()); player = manager.createAlizedPlayer (locator); player.prefetch (); // 新พร้อมที่จะอ่าน player.start (); // เริ่มอ่าน} else {system.out.println ("ไม่พบไฟล์"); }} catch (ไม่สามารถเกิดขึ้นกับ ex) {ex.printstacktrace (); } catch (noplayerexception ex) {ex.printstacktrace (); } catch (ioexception ex) {ex.printstacktrace (); }} public void play () {// play mp3 ไฟล์ลอง {bufferedInputStream buffer = ใหม่ bufferedInputStream (ใหม่ FileInputStream ("เมื่อฉันคิดถึงคุณ. mp3")); ผู้เล่นผู้เล่น = ผู้เล่นใหม่ (บัฟเฟอร์); player.play (); } catch (exception e) {system.out.println (e); }} โมฆะคงที่สาธารณะหลัก (สตริง [] args) {นาฬิกา t = นาฬิกาใหม่ (); T.SetDefaultCloseOperation (jframe.exit_on_close); T.SetVisible (จริง); //t.setLocationRelativeto(null); // ฟอร์มจะปรากฏขึ้นที่กึ่งกลางของหน้าจอ // ป้อนเวลาการเตือนเพื่อเป็น sethour = integer.parseint (joptionpane.showinputDialog ("โปรดป้อนชั่วโมง:")); setMinute = integer.parseint (joptionpane.showinputDialog ("โปรดป้อนนาที:"); SetSecond = Integer.ParseInt (JOptionPane.ShowInputDialog ("โปรดป้อนวินาที:")); } คลาส myPanel ขยาย JPanel {public myPanel () {e = new Ellipse2d.double (x_begin, y_begin, 100, 100); ชั่วโมง = ใหม่ line2d.double (x, y, x, y); minline = ใหม่ line2d.double (x, y, x, y); secondLine = ใหม่ line2d.double (x, y, x, y); } โมฆะสาธารณะ PaintComponent (กราฟิก 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 {โมฆะสาธารณะเรียกใช้ () {ปฏิทิน = ใหม่ gregoriancalendar (); ชั่วโมง = ปฏิทิน get (calendar.hour); minute = calendar.get (calendar.minute); second = calendar.get (calendar.second); if (sethour == ชั่วโมง && setMinute == นาที && setSecond == วินาที) {playMusic (ไฟล์); เล่น(); } timestr = "เวลาปัจจุบัน:" + ชั่วโมง + ":" + นาที + ":" + วินาที; ชั่วโมง x2 = x + 40 * math.cos (ชั่วโมง * (math.pi / 6) - math.pi / 2); hourline.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 (วินาที * (math.pi / 30) - math.pi / 2); secondLine.y2 = y + 50 * math.sin (วินาที * (math.pi / 30) - math.pi / 2); ทาสีใหม่ (); - การเล่นไฟล์ MP3 ต้องดาวน์โหลดแพ็คเกจ JAR ที่เกี่ยวข้องไม่เช่นนั้นจะไม่สามารถเล่นได้
ดาวน์โหลดที่อยู่: Java ใช้นาฬิกาแบบไดนามิก
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น