1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務(wù)時間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      鬧鐘java設(shè)計代碼 java鬧鐘程序

      求java鬧鐘程序源代碼

      import java.util.*;

      創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、做網(wǎng)站、尋甸網(wǎng)絡(luò)推廣、成都微信小程序、尋甸網(wǎng)絡(luò)營銷、尋甸企業(yè)策劃、尋甸品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學生創(chuàng)業(yè)者提供尋甸建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com

      import java.awt.*;

      import java.applet.*;

      import java.text.*;

      import java.awt.event.*;

      public class Alarm extends Applet implements Runnable

      {

      Thread timer=null; //創(chuàng)建線程timer

      Image gif1; //clockp:鬧鐘的外殼,鬧鈴和報時物

      boolean setflag=false,stopflag=false,cancelflag=false;

      Panel setpanel;

      //獲取聲音文件

      AudioClip ring=getAudioClip(getCodeBase(), "1.mid");

      Button setbutton=new Button("SET");

      Button cancelbutton=new Button("CANCEL");

      Button stopbutton=new Button("STOP");

      //響應(yīng)按鈕事件

      private ActionListener setli=new ActionListener()

      {

      public void actionPerformed(ActionEvent e)

      {

      setflag=true;

      }

      };

      private ActionListener cancelli=new ActionListener()

      {

      public void actionPerformed(ActionEvent e)

      {

      setflag=true;

      }

      };

      private ActionListener stopli=new ActionListener()

      {

      public void actionPerformed(ActionEvent e)

      {

      ring.stop();

      //清除的方法

      //g.clearRect(83,280,20,30);

      }

      };

      Label note1=new Label("Alarm clock:");

      //GregorianCalendar提供的是一個日歷式的東東,上面又多了很多的參數(shù),是方便操作了不少。而Date類的功能遠不及其,求個和日期有聯(lián)系的還要自己計算。

      GregorianCalendar cal=new GregorianCalendar();

      GregorianCalendar cal2=new GregorianCalendar();

      SimpleDateFormat df=new SimpleDateFormat("yyyy MM dd HH:mm:ss");//設(shè)置時間格式

      Date dummy=new Date(); //生成Data對象

      String lastdate=df.format(dummy);

      Font F=new Font("TimesRoman",Font.PLAIN,14);//設(shè)置字體格式

      Date dat=null;

      Date timeNow;

      Color fgcol=Color.blue;

      Color fgcol2=Color.darkGray;

      Color backcolor=Color.blue;

      Label hlabel2,mlabel2,slabel2;//顯示時間單位時所用的標簽(時、分、秒)

      int i;

      int s,m,h;

      TextField sethour,setmin,setsec;//顯示當前時間文本框和定時文本框

      //在Applet程序中,首先自動調(diào)用初始化完成必要的初始化工作,緊接著自動調(diào)用start,在進入執(zhí)行程序和返回到該頁面時被調(diào)用,而從該頁面轉(zhuǎn)到別的頁面時,stop被調(diào)用,關(guān)閉瀏覽器時,執(zhí)行destroy。

      public void init()//初始化方法

      {

      int fieldx=50,fieldy1=120,fieldy2=220,fieldw=30,fieldh=20,space=50;//顯示時間和定時文本框的定位參數(shù)

      setLayout(null); //將布局管理器初始化為null

      setpanel=new Panel();

      setpanel.setLayout(null);

      setpanel.add(note1);

      note1.setBounds(30,100,60,20);

      note1.setBackground(backcolor);

      note1.setForeground(Color.black);

      //定時用的文本框(時、分、秒)

      sethour=new TextField("00",5);

      setmin=new TextField("00",5);

      setsec=new TextField("00",5);

      hlabel2=new Label();

      mlabel2=new Label();

      slabel2=new Label();

      //定時的小時文本框的位置、大小

      setpanel.add(sethour);

      sethour.setBounds(fieldx,fieldy2,fieldw,fieldh);

      sethour.setBackground(Color.white);

      //在文本框后加入單位“時”

      setpanel.add(hlabel2);

      hlabel2.setText("h");

      hlabel2.setBackground(backcolor);

      hlabel2.setForeground(Color.black);

      hlabel2.setBounds(fieldx+fieldw+3,fieldy2,14,20);

      fieldx=fieldx+space;

      //定時的分鐘文本框的位置、大小

      setpanel.add(setmin);

      setmin.setBounds(fieldx,fieldy2,fieldw,fieldh);

      setmin.setBackground(Color.white);

      //在文本框后加入單位“分”

      setpanel.add(mlabel2);

      mlabel2.setText("m");

      mlabel2.setBackground(backcolor);

      mlabel2.setForeground(Color.black);

      mlabel2.setBounds(fieldx+fieldw+3,fieldy2,14,20);

      fieldx=fieldx+space;

      //定時的秒文本框的位置、大小

      setpanel.add(setsec);

      setsec.setBounds(fieldx,fieldy2,fieldw,fieldh);

      setsec.setBackground(Color.white);

      //在文本框后加入單位“秒”

      setpanel.add(slabel2);

      slabel2.setText("s");

      slabel2.setBackground(backcolor);

      slabel2.setForeground(Color.black);

      slabel2.setBounds(fieldx+fieldw+3,fieldy2,14,20);

      //設(shè)置鬧鐘控制按鈕(on,off)

      setpanel.add(cancelbutton);

      setpanel.add(setbutton);

      setpanel.add(stopbutton);

      cancelbutton.setBounds(90,180,40,20);

      setbutton.setBounds(140,180,40,20);

      stopbutton.setBounds(522,180,40,20);

      setbutton.addActionListener(setli);

      cancelbutton.addActionListener(cancelli);

      stopbutton.addActionListener(stopli);

      stopbutton.setVisible(false);

      //將面板加入當前容器中,并設(shè)置面板的大小和背景色

      add(setpanel);

      setpanel.setBounds(300,1,250,420);

      setpanel.setBackground(backcolor);

      /*int xcenter,ycenter,s,m,h;

      //鬧鐘中心點所在位置

      xcenter=145;

      ycenter=162;

      s=(int)cal.get(Calendar.SECOND);

      m=(int)cal.get(Calendar.MINUTE);

      h=(int)cal.get(Calendar.HOUR_OF_DAY);

      //初始化指針位置

      lastxs=(int)(Math.cos(s*3.14f/30-3.14f/2)*30+xcenter);

      lastys=(int)(Math.sin(s*3.14f/30-3.14f/2)*30+ycenter);

      lastxm=(int)(Math.cos(m*3.14f/30-3.14f/2)*25+xcenter);

      lastym=(int)(Math.sin(m*3.14f/30-3.14f/2)*25+ycenter);

      lastxh=(int)(Math.cos((h*30+m/2)*3.14f/180-3.14f/2)*18+xcenter);

      lastyh=(int)(Math.sin((h*30+m/2)*3.14f/180-3.14f/2)*18+ycenter);

      lasts=s; */

      MediaTracker mt=new MediaTracker(this);//為給定組件創(chuàng)建一個跟蹤媒體的MediaTracker對象,把圖片添加到被跟蹤的圖片組

      //Java允?Sapplet??HTML所在的位置(decument base)下?d?Y料,也允?Sapplet?鈉涑淌醬a所在的位置(code base)下?d?Y料。藉由呼叫g(shù)etDocumentBase()?cgotCodeBase()可得到URL物件。?@些函?????湍閼業(yè)僥閬胂螺d的?n案的位置

      //clockp=getImage(getDocumentBase(),"11.png");

      gif1=getImage(getCodeBase(),"2.gif");

      //i為id號

      mt.addImage(gif1,i++);

      try

      {

      mt.waitForAll();

      }

      catch(InterruptedException e)

      {};//等待加載結(jié)束

      resize(600,420);//設(shè)置窗口大小

      }

      //窗口顯示有改變的時候調(diào)用paint

      public void paint(Graphics g)

      {//重寫paint()方法

      int xh,yh,xm,ym,xs,ys,strike_times;

      int xcenter,ycenter;

      String today;

      xcenter=148;

      ycenter=186;

      dat=new Date();

      //用當前時間初始化日歷時間

      cal.setTime(dat);

      //讀取當前時間

      s=(int)cal.get(Calendar.SECOND);

      m=(int)cal.get(Calendar.MINUTE);

      h=(int)cal.get(Calendar.HOUR_OF_DAY);

      //換一種時間表達形式

      today=df.format(dat);

      //指針位置

      xs=(int)(Math.cos(s*3.14f/30-3.14f/2)*30+xcenter);

      ys=(int)(Math.sin(s*3.14f/30-3.14f/2)*30+ycenter);

      xm=(int)(Math.cos(m*3.14f/30-3.14f/2)*25+xcenter);

      ym=(int)(Math.sin(m*3.14f/30-3.14f/2)*25+ycenter);

      xh=(int)(Math.cos((h*30+m/2)*3.14f/180-3.14f/2)*12+xcenter);

      yh=(int)(Math.sin((h*30+m/2)*3.14f/180-3.14f/2)*12+ycenter);

      //設(shè)置字體和顏色

      g.setFont(F);

      //前景色

      g.setColor(getBackground()); //取背景色的

      g.drawImage(gif1,75,110,this);

      //以數(shù)字方式顯示年、月、日和時間

      g.drawString(today,55,415);

      //畫指針

      g.drawLine(xcenter,ycenter,xs,ys);

      g.drawLine(xcenter,ycenter-1,xm,ym); //(x1,y1,x2,y2)

      g.drawLine(xcenter-1,ycenter,xm,ym);

      g.drawLine(xcenter,ycenter-1,xh,yh);

      g.drawLine(xcenter-1,ycenter,xh,yh);

      int timedelta;//記錄當前時間與鬧鈴定時的時差

      Integer currh,currm,currs;//分別記錄當前的時、分、秒

      Date dat2=new Date();

      cal2.setTime(dat2);

      //讀取當前時間

      currh=(int)cal2.get(Calendar.SECOND);

      currm=(int)cal2.get(Calendar.MINUTE);

      currs=(int)cal2.get(Calendar.HOUR_OF_DAY);

      //這樣做的話說我API已過時

      //timeNow=new Date();

      //currh=new Integer(timeNow.getHours());

      //currm=new Integer(timeNow.getMinutes());

      //currs=new Integer(timeNow.getSeconds());

      if(setflag)

      { //判斷是否設(shè)置了鬧鐘

      //判斷當前時間是否為鬧鐘所定的時間

      if((currh.intValue()==Integer.valueOf(sethour.getText()).intValue())(currm.intValue()==Integer.valueOf(setmin.getText()).intValue())(currs.intValue()==Integer.valueOf(setsec.getText()).intValue()))

      {

      ring.play();

      g.drawImage(gif1,83,280,this);

      stopbutton.setVisible(true);

      }

      timedelta=currm.intValue()*60+currs.intValue()-Integer.valueOf(setmin.getText()).intValue()*60-Integer.valueOf(setsec.getText()).intValue();

      if((timedelta=30))

      {

      //若當前時間與鬧鐘相差時間超過30秒,鬧鐘自動停

      ring.stop();

      //清除的方法

      g.clearRect(83,280,20,30);

      }

      }

      dat=null;

      }

      public void start()

      {

      if(timer==null)

      {

      timer=new Thread(this);//將timer實例化

      timer.start();

      }

      }

      public void stop()

      {

      timer=null;

      }

      //給創(chuàng)建線程后start之后自動執(zhí)行的函數(shù)

      public void run()

      {

      //在run()方法中,調(diào)用repaint()方法,以重繪小程序區(qū),進行時鐘顯示的更新。接著調(diào)用sleep方法讓當前線程(也就是我們創(chuàng)建的線程clockthread)睡眠1000毫秒,因為我們每秒鐘要更新一下顯示,所以讓它睡眠1秒

      while(timer!=null)

      {

      try

      {

      timer.sleep(1000);

      }

      catch(InterruptedException e)

      {}

      //調(diào)用repaint時,會首先清除掉paint方法之前的畫的內(nèi)容,再調(diào)用paint方法

      repaint();//刷新畫面

      }

      timer=null;

      }

      //當AWT接收到一個applet的重繪請求時,它就調(diào)用applet的 update(),默認地,update() 清除applet的背景,然后調(diào)用 paint()。重載 update(),將以前在paint()中的繪圖代碼包含在update()中,從而避免每次重繪時將整個區(qū)域清除

      //有兩種方法可以明顯地減弱閃爍:重載 update()或使用雙緩沖。

      //使用雙緩沖技術(shù):另一種減小幀之間閃爍的方法是使用雙緩沖,它在許多動畫Applet中被使用。其主要原理是創(chuàng)建一個后臺圖像,將需要繪制的一幀畫入圖像,然后調(diào)用DrawImage()將整個圖像一次畫到屏幕上去;好處是大部分繪制是離屏的,將離屏圖像一次繪至屏幕上比直接在屏幕上繪制要有效得多,大大提高做圖的性能。

      // 雙緩沖可以使動畫平滑,但有一個缺點,要分配一張后臺圖像,如果圖像相當大,這將需要很大一塊內(nèi)存;當你使用雙緩沖技術(shù)時,應(yīng)重載 update()。

      public void update(Graphics g)

      {

      Image offscreen_buf=null;

      //采用雙緩沖技術(shù)的update()方法

      if(offscreen_buf==null)

      offscreen_buf=createImage(600,420);

      Graphics offg=offscreen_buf.getGraphics();

      offg.clipRect(1,1,599,419);

      paint(offg);

      Graphics ong=getGraphics();

      ong.clipRect(1,1,599,419);

      ong.drawImage(offscreen_buf,0,0,this);

      }

      /** Creates a new instance of AlarmClock */

      }

      尋找java編程高手寫一個鬧鐘的程序

      自己之前做過的一個:

      import java.awt.*;

      import java.awt.event.*;

      import java.util.*;

      import javax.swing.*;

      import javax.swing.Timer;

      public class Clock extends JFrame implements ActionListener {

      public final int HEIGTH = 200, L0 = 50, T0 = 50,N=8;

      public final double RAD = Math.PI / 180.0;

      int x, y, old_X, old_Y, r, x0, y0, w, h, ang;

      int sdo, mdo, hdo, old_M, old_H, hh, mm, ss;

      int delay = 1000;

      Calendar now;

      String st, alarm, Items1, Items2,str[];

      JButton jb;

      JComboBox jc1, jc2, jc3;

      JLabel jl1, jl2, jl3, jl4;

      JMenu jm1, jm2, jm3, jm4;

      JMenuBar jmb;

      JMenuItem jmi1, jmi2, jmi3, jmi4, jmi5, jmi6, jmi7, jmi8, jmi9,jmi10;

      JTextField jtf1, jtf2, time;

      JPanel jp1, jp2, jp3;

      Timer timer;

      TimeZone tz = TimeZone.getTimeZone("JST");

      Toolkit toolkit=Toolkit.getDefaultToolkit();;

      /**

      * br

      * 方法說明:實現(xiàn)ActionListener類必須過載的方法

      */

      public static void main(String[] args) {

      Clock cp = new Clock();

      cp.setVisible(true);

      }

      Clock() {

      super("Java鬧鐘!");

      setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

      setSize(550, 700);

      setVisible(true);

      Container contentPane = getContentPane();

      jp2 = new JPanel();

      jmb = new JMenuBar();

      jm1 = new JMenu("背景顏色設(shè)置 ", true);

      jmi1 = new JMenuItem("外圈顏色");

      jmi1.addActionListener(this);

      jmi1.setActionCommand("color1");

      jm1.add(jmi1);

      jmi2 = new JMenuItem("鬧鐘邊線顏色");

      jmi2.addActionListener(this);

      jmi2.setActionCommand("color2");

      jm1.add(jmi2);

      jmi3=new JMenuItem("底盤顏色");

      jmi3.addActionListener(this);

      jmi3.setActionCommand("color3");

      jm1.add(jmi3);

      jmi4=new JMenuItem("系統(tǒng)時間背靜顏色");

      jmi4.addActionListener(this);

      jmi4.setActionCommand("color4");

      jm1.add(jmi4);

      jmb.add(jm1);

      jm2 = new JMenu("指針顏色設(shè)置 ", true);

      jmi5 = new JMenuItem("秒針顏色");

      jmi5.addActionListener(this);

      jmi5.setActionCommand("color5");

      jm2.add(jmi5);

      jmi6 = new JMenuItem("分針顏色");

      jmi6.addActionListener(this);

      jmi6.setActionCommand("color6");

      jm2.add(jmi6);

      jmi7 = new JMenuItem("時針顏色");

      jmi7.addActionListener(this);

      jmi7.setActionCommand("color7");

      jm2.add(jmi7);

      jmb.add(jm2);

      jm3 = new JMenu("鬧鈴聲音設(shè)置 ", true);

      jmi8 = new JMenuItem("響鈴1");

      jmi8.addActionListener(this);

      jmi8.setActionCommand("ring1");

      jm3.add(jmi8);

      jmi9 = new JMenuItem("靜音");

      jmi9.addActionListener(this);

      jmi9.setActionCommand("ring2");

      jm3.add(jmi9);

      jmb.add(jm3);

      jm4 = new JMenu("幫助 ", true);

      jmi10=new JMenuItem("使用說明");

      jmi10.addActionListener(this);

      jmi10.setActionCommand("help");

      jm4.add(jmi10);

      jmb.add(jm4);

      jp2.add(jmb);

      contentPane.add(jp2, BorderLayout.NORTH);

      jp3 = new JPanel();

      jl1 = new JLabel("鬧鈴時間");

      jl1.setFont(new Font("楷體_GB2312", Font.BOLD, 18));

      time = new JTextField("00:00", 5);

      alarm = time.getText();

      jb = new JButton("修改鬧鈴時間");

      jb.addActionListener(this);

      jb.setActionCommand("CC");

      jp3.add(jl1);

      jp3.add(time);

      jp3.add(jb);

      contentPane.add(jp3, BorderLayout.SOUTH);

      ClockPanel clock = new ClockPanel();

      contentPane.add(clock, BorderLayout.CENTER);

      // 窗體添加事件監(jiān)聽,監(jiān)聽秒表的觸發(fā)

      ActionListener taskPerformer = new ActionListener() {

      public void actionPerformed(ActionEvent evt) {

      repaint();

      }

      };

      new Timer(delay, taskPerformer).start();

      }

      /**

      * br

      * 方法說明:繪制圖形

      */

      Color C1 = Color.lightGray;// 外圈顏色

      Color C2 = Color.black;// 邊線顏色

      Color C3 = Color.magenta;// 內(nèi)盤顏色

      Color C4 = Color.blue;// 背景顏色

      Color C5 = Color.yellow;// 秒針顏色

      Color C6 = Color.green;// 分針顏色

      Color C7 = Color.red;//時針顏色

      public class ClockPanel extends JPanel {

      public void paint(Graphics g) {

      h = getSize().height - 200;

      // 繪制圓形

      g.setColor(C1);

      g.fillOval(L0 + 30, T0 + 30, h - 60, h - 60);

      g.setColor(C2);

      g.drawOval(L0 + 31, T0 + 31, h - 62, h - 62);

      g.setColor(C3);

      g.fillOval(L0 + 50, T0 + 50, h - 100, h - 100);

      g.setColor(C2);

      g.drawOval(L0 + 51, T0 + 51, h - 102, h - 102);

      r = h / 2 - 30;

      x0 = 30 + r - 5 + L0;

      y0 = 30 + r - 5 - T0;

      ang = 60;

      for (int i = 1; i = 12; i++) {

      x = (int) ((r - 10) * Math.cos(RAD * ang) + x0);

      y = (int) ((r - 10) * Math.sin(RAD * ang) + y0);

      g.drawString("" + i, x, h - y);

      ang -= 30;

      }

      x0 = 30 + r + L0;

      y0 = 30 + r + T0;

      g.drawString("指針式時鐘", 215, 200);

      // 獲取時間

      now = Calendar.getInstance();

      hh = now.get(Calendar.HOUR_OF_DAY);// 小時

      mm = now.get(Calendar.MINUTE);// 分鐘

      ss = now.get(Calendar.SECOND);// 秒

      g.setColor(C4);

      g.fillRect(5, 550, 150, 30);// 填充的矩形

      g.setColor(C6);

      if (hh 10)

      st = "0" + hh;

      else

      st = "" + hh;

      if (mm 10)

      st = st + ":0" + mm;

      else

      st = st + ":" + mm;

      if(alarm.equals(st))

      {

      if(toolkit!=null)

      toolkit.beep();

      else {}

      }

      if (ss 10)

      st = st + ":0" + ss;

      else

      st = st + ":" + ss;

      {

      g.setFont(new Font("華文楷體", Font.BOLD, 16));

      g.drawString("系統(tǒng)時間:" + st, 10, 570);

      }

      // 計算時間和圖形的關(guān)系

      sdo = 90 - ss * 6;

      mdo = 90 - mm * 6;

      hdo = 90 - hh * 30 - mm / 2;

      // 擦除秒針

      if (old_X 0) {

      g.setColor(C3);

      } else {

      old_M = mdo;

      old_H = hdo;

      }

      // 繪制秒針

      g.setColor(C5);

      x = (int) ((r - 26) * Math.cos(RAD * sdo) + x0);

      y = (int) ((r - 26) * Math.sin(RAD * sdo) + y0) - 2 * T0;

      g.drawLine(x0, y0, x, (h - y));

      old_X = x;

      old_Y = y;

      // 擦除分針和時針

      if (mdo != old_M) {

      g.setColor(C3);

      old_M = mdo;

      }

      if (hdo != old_H) {

      g.setColor(C3);

      old_H = hdo;

      }

      // 繪制分針

      g.setColor(C6);

      x = (int) ((r - 50) * Math.cos(RAD * mdo) + x0);

      y = (int) ((r - 50) * Math.sin(RAD * mdo) + y0) - 2 * T0;

      g.drawLine(x0, y0, x, (h - y));

      // 繪制時針

      g.setColor(C7);

      x = (int) ((r - 90) * Math.cos(RAD * hdo) + x0);

      y = (int) ((r - 90) * Math.sin(RAD * hdo) + y0) - 2 * T0;

      g.drawLine(x0, y0, x, (h - y));

      } // end paint

      }

      // 鬧鈴時間的判斷及實現(xiàn)

      // 鬧鈴聲音的實現(xiàn)

      public void actionPerformed(ActionEvent e) {

      // JMenuItem m = (JMenuItem) e.getSource();

      if (e.getActionCommand() == "CC") {

      int newHou, newMin;

      char c;

      String getTime = JOptionPane.showInputDialog(this, "請輸入鬧鈴時間格式如:", "00:00");

      repaint();

      //如果撤消設(shè)置時間,就什么打印null

      if(getTime==null)

      System.out.println(getTime);

      // dispose();

      judge: if (getTime != null) {

      //打印輸入的設(shè)置的時間

      System.out.println(getTime);

      // 判斷輸入的是不是5位字符

      if (getTime.length() != 5) {

      JOptionPane.showMessageDialog(time, "格式錯誤\n請按格式輸入5位數(shù)字", "Error",

      JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      // 判斷輸入的是不是數(shù)字

      for (int i = 0; i (getTime.length()); i++) {

      c = getTime.charAt(i);

      if (i == 2 !Character.isDigit(c))

      continue;

      // 判斷當前字符,如果不是數(shù)字則跳出該事件

      if (i != 2 !Character.isDigit(c)) {

      JOptionPane.showMessageDialog(this, "格式錯誤\n請按格式輸入5位數(shù)字",

      "Error",JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      }

      char[] hour = { getTime.charAt(0), getTime.charAt(1) };

      char[] minute = { getTime.charAt(3), getTime.charAt(4) };

      newHou = Integer.parseInt(String.valueOf(hour));

      newMin = Integer.parseInt(String.valueOf(minute));

      if (newHou = 24 || newHou 0) {

      JOptionPane.showMessageDialog(this, "格式錯誤\n小時應(yīng)該是不小于0不大于23的正數(shù)",

      "Error", JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      if (newMin = 60 || newHou 0) {

      JOptionPane.showMessageDialog(this, "格式錯誤\n分鐘應(yīng)該是小于60的正數(shù)", "Error",

      JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      new SetTime(newHou, newMin);

      }

      }

      if (e.getActionCommand() == "ring1") {

      toolkit=Toolkit.getDefaultToolkit();

      }

      if(e.getActionCommand() == "ring2"){

      System.out.println("靜音");

      toolkit=null;

      }

      if (e.getActionCommand() == "color1") {

      String color;

      Color c;

      System.out.println("color1");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的外圈顏色(0--255)", "128");

      if (color == null) {

      } else {

      if (Integer.parseInt(color) 0

      || Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的外圈顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C1 = c;

      }

      }

      }

      if(e.getActionCommand() == "color2"){

      String color;

      Color c;

      System.out.println("color2");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的邊線顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的邊線顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C2 = c;

      }

      }

      }

      if(e.getActionCommand() == "color3"){

      String color;

      Color c;

      System.out.println("color3");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的內(nèi)盤顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的內(nèi)盤顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C3 = c;

      }

      }

      }

      if(e.getActionCommand() == "color4"){

      String color;

      Color c;

      System.out.println("color4");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的背景顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的背景顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C4 = c;

      }

      }

      }

      if(e.getActionCommand() == "color5"){

      String color;

      Color c;

      System.out.println("color5");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的秒針顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的秒針顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C5 = c;

      }

      }

      }

      if(e.getActionCommand() == "color6"){

      String color;

      Color c;

      System.out.println("color6");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的分針顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的分針顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C6 = c;

      }

      }

      }

      if(e.getActionCommand() == "color7"){

      String color;

      Color c;

      System.out.println("color7");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的時針顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的時針顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C7 = c;

      }

      }

      }

      if(e.getActionCommand() == "help"){

      String help;

      help = JOptionPane.showInputDialog(this, "輸入quit退出該鬧鐘的使用", "這是運行在Java中的指針式時鐘");

      if(help.equals("quit"))

      dispose();

      else {}

      // timer.restart();

      }

      }

      class SetTime {

      String Hour;

      String Minute;

      public SetTime() { }

      public SetTime(int hour, int minute) {

      // 當時間參數(shù)小于10的時候在前面添加字符0

      if (hour 10) {

      Hour = "0" + String.valueOf(hour);

      } else {

      Hour = "" + String.valueOf(hour);

      }

      if (minute 10) {

      Minute = "0" + String.valueOf(minute);

      } else {

      Minute = "" + String.valueOf(minute);

      }

      alarm = Hour + ":" + Minute;

      time.setText(alarm);

      repaint();

      }

      }

      }

      Java建立一個鬧鐘廠,鬧鐘屬性:形狀、顏色、時間(設(shè)置為整型)鬧鐘行為:響鈴,設(shè)?

      代碼如下:

      import java.awt.BorderLayout;

      import java.awt.FlowLayout;

      import java.awt.Font;

      import java.awt.Frame;

      import java.awt.GridLayout;

      import java.awt.event.ActionEvent;

      import java.awt.event.ActionListener;

      import java.awt.event.KeyEvent;

      import java.awt.event.KeyListener;

      import java.io.IOException;

      import java.text.DateFormat;

      import java.text.SimpleDateFormat;

      import java.util.Calendar;

      import java.util.Timer;

      import java.util.TimerTask;

      import javax.sound.sampled.AudioInputStream;

      import javax.sound.sampled.AudioSystem;

      import javax.sound.sampled.Clip;

      import javax.sound.sampled.LineEvent;

      import javax.sound.sampled.LineListener;

      import javax.sound.sampled.LineUnavailableException;

      import javax.sound.sampled.UnsupportedAudioFileException;

      import javax.swing.JButton;

      import javax.swing.JDialog;

      import javax.swing.JFrame;

      import javax.swing.JLabel;

      import javax.swing.JPanel;

      import javax.swing.JTextField;

      /**

      * 鬧鐘主界面

      */

      public class AlarmClock extends JFrame implements ActionListener {

      private static final int LOOP_COUNT = 5; // 重復(fù)播放的次數(shù)

      private JLabel labelClock, labelAlarm, labelNextAlarm;

      private JButton btnSet, btnClose;

      private SetDialog setDialog;

      private JPanel topPanel, alarmPanel;

      private Timer timer;

      private Clip clip;

      private Calendar alarmCal;

      private boolean timeReached = true;

      private DateFormat df = new SimpleDateFormat(

      用JAVA編一個小鬧鐘

      import java.awt.*;

      import java.awt.event.*;

      import java.util.*;

      import javax.swing.*;

      import javax.swing.Timer;

      public class Clock extends JFrame implements ActionListener {

      public final int HEIGTH = 200, L0 = 50, T0 = 50,N=8;

      public final double RAD = Math.PI / 180.0;

      int x, y, old_X, old_Y, r, x0, y0, w, h, ang;

      int sdo, mdo, hdo, old_M, old_H, hh, mm, ss;

      int delay = 1000;

      Calendar now;

      String st, alarm, Items1, Items2,str[];

      JButton jb;

      JComboBox jc1, jc2, jc3;

      JLabel jl1, jl2, jl3, jl4;

      JMenu jm1, jm2, jm3, jm4;

      JMenuBar jmb;

      JMenuItem jmi1, jmi2, jmi3, jmi4, jmi5, jmi6, jmi7, jmi8, jmi9,jmi10;

      JTextField jtf1, jtf2, time;

      JPanel jp1, jp2, jp3;

      Timer timer;

      TimeZone tz = TimeZone.getTimeZone("JST");

      Toolkit toolkit=Toolkit.getDefaultToolkit();;

      /**

      * br

      * 方法說明:實現(xiàn)ActionListener類必須過載的方法

      */

      public static void main(String[] args) {

      Clock cp = new Clock();

      cp.setVisible(true);

      }

      Clock() {

      super("Java鬧鐘!");

      setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

      setSize(550, 700);

      setVisible(true);

      Container contentPane = getContentPane();

      jp2 = new JPanel();

      jmb = new JMenuBar();

      jm1 = new JMenu("背景顏色設(shè)置 ", true);

      jmi1 = new JMenuItem("外圈顏色");

      jmi1.addActionListener(this);

      jmi1.setActionCommand("color1");

      jm1.add(jmi1);

      jmi2 = new JMenuItem("鬧鐘邊線顏色");

      jmi2.addActionListener(this);

      jmi2.setActionCommand("color2");

      jm1.add(jmi2);

      jmi3=new JMenuItem("底盤顏色");

      jmi3.addActionListener(this);

      jmi3.setActionCommand("color3");

      jm1.add(jmi3);

      jmi4=new JMenuItem("系統(tǒng)時間背靜顏色");

      jmi4.addActionListener(this);

      jmi4.setActionCommand("color4");

      jm1.add(jmi4);

      jmb.add(jm1);

      jm2 = new JMenu("指針顏色設(shè)置 ", true);

      jmi5 = new JMenuItem("秒針顏色");

      jmi5.addActionListener(this);

      jmi5.setActionCommand("color5");

      jm2.add(jmi5);

      jmi6 = new JMenuItem("分針顏色");

      jmi6.addActionListener(this);

      jmi6.setActionCommand("color6");

      jm2.add(jmi6);

      jmi7 = new JMenuItem("時針顏色");

      jmi7.addActionListener(this);

      jmi7.setActionCommand("color7");

      jm2.add(jmi7);

      jmb.add(jm2);

      jm3 = new JMenu("鬧鈴聲音設(shè)置 ", true);

      jmi8 = new JMenuItem("響鈴1");

      jmi8.addActionListener(this);

      jmi8.setActionCommand("ring1");

      jm3.add(jmi8);

      jmi9 = new JMenuItem("靜音");

      jmi9.addActionListener(this);

      jmi9.setActionCommand("ring2");

      jm3.add(jmi9);

      jmb.add(jm3);

      jm4 = new JMenu("幫助 ", true);

      jmi10=new JMenuItem("使用說明");

      jmi10.addActionListener(this);

      jmi10.setActionCommand("help");

      jm4.add(jmi10);

      jmb.add(jm4);

      jp2.add(jmb);

      contentPane.add(jp2, BorderLayout.NORTH);

      jp3 = new JPanel();

      jl1 = new JLabel("鬧鈴時間");

      jl1.setFont(new Font("楷體_GB2312", Font.BOLD, 18));

      time = new JTextField("00:00", 5);

      alarm = time.getText();

      jb = new JButton("修改鬧鈴時間");

      jb.addActionListener(this);

      jb.setActionCommand("CC");

      jp3.add(jl1);

      jp3.add(time);

      jp3.add(jb);

      contentPane.add(jp3, BorderLayout.SOUTH);

      ClockPanel clock = new ClockPanel();

      contentPane.add(clock, BorderLayout.CENTER);

      // 窗體添加事件監(jiān)聽,監(jiān)聽秒表的觸發(fā)

      ActionListener taskPerformer = new ActionListener() {

      public void actionPerformed(ActionEvent evt) {

      repaint();

      }

      };

      new Timer(delay, taskPerformer).start();

      }

      /**

      * br

      * 方法說明:繪制圖形

      */

      Color C1 = Color.lightGray;// 外圈顏色

      Color C2 = Color.black;// 邊線顏色

      Color C3 = Color.magenta;// 內(nèi)盤顏色

      Color C4 = Color.blue;// 背景顏色

      Color C5 = Color.yellow;// 秒針顏色

      Color C6 = Color.green;// 分針顏色

      Color C7 = Color.red;//時針顏色

      public class ClockPanel extends JPanel {

      public void paint(Graphics g) {

      h = getSize().height - 200;

      // 繪制圓形

      g.setColor(C1);

      g.fillOval(L0 + 30, T0 + 30, h - 60, h - 60);

      g.setColor(C2);

      g.drawOval(L0 + 31, T0 + 31, h - 62, h - 62);

      g.setColor(C3);

      g.fillOval(L0 + 50, T0 + 50, h - 100, h - 100);

      g.setColor(C2);

      g.drawOval(L0 + 51, T0 + 51, h - 102, h - 102);

      r = h / 2 - 30;

      x0 = 30 + r - 5 + L0;

      y0 = 30 + r - 5 - T0;

      ang = 60;

      for (int i = 1; i = 12; i++) {

      x = (int) ((r - 10) * Math.cos(RAD * ang) + x0);

      y = (int) ((r - 10) * Math.sin(RAD * ang) + y0);

      g.drawString("" + i, x, h - y);

      ang -= 30;

      }

      x0 = 30 + r + L0;

      y0 = 30 + r + T0;

      g.drawString("指針式時鐘", 215, 200);

      // 獲取時間

      now = Calendar.getInstance();

      hh = now.get(Calendar.HOUR_OF_DAY);// 小時

      mm = now.get(Calendar.MINUTE);// 分鐘

      ss = now.get(Calendar.SECOND);// 秒

      g.setColor(C4);

      g.fillRect(5, 550, 150, 30);// 填充的矩形

      g.setColor(C6);

      if (hh 10)

      st = "0" + hh;

      else

      st = "" + hh;

      if (mm 10)

      st = st + ":0" + mm;

      else

      st = st + ":" + mm;

      if(alarm.equals(st))

      {

      if(toolkit!=null)

      toolkit.beep();

      else {}

      }

      if (ss 10)

      st = st + ":0" + ss;

      else

      st = st + ":" + ss;

      {

      g.setFont(new Font("華文楷體", Font.BOLD, 16));

      g.drawString("系統(tǒng)時間:" + st, 10, 570);

      }

      // 計算時間和圖形的關(guān)系

      sdo = 90 - ss * 6;

      mdo = 90 - mm * 6;

      hdo = 90 - hh * 30 - mm / 2;

      // 擦除秒針

      if (old_X 0) {

      g.setColor(C3);

      } else {

      old_M = mdo;

      old_H = hdo;

      }

      // 繪制秒針

      g.setColor(C5);

      x = (int) ((r - 26) * Math.cos(RAD * sdo) + x0);

      y = (int) ((r - 26) * Math.sin(RAD * sdo) + y0) - 2 * T0;

      g.drawLine(x0, y0, x, (h - y));

      old_X = x;

      old_Y = y;

      // 擦除分針和時針

      if (mdo != old_M) {

      g.setColor(C3);

      old_M = mdo;

      }

      if (hdo != old_H) {

      g.setColor(C3);

      old_H = hdo;

      }

      // 繪制分針

      g.setColor(C6);

      x = (int) ((r - 50) * Math.cos(RAD * mdo) + x0);

      y = (int) ((r - 50) * Math.sin(RAD * mdo) + y0) - 2 * T0;

      g.drawLine(x0, y0, x, (h - y));

      // 繪制時針

      g.setColor(C7);

      x = (int) ((r - 90) * Math.cos(RAD * hdo) + x0);

      y = (int) ((r - 90) * Math.sin(RAD * hdo) + y0) - 2 * T0;

      g.drawLine(x0, y0, x, (h - y));

      } // end paint

      }

      // 鬧鈴時間的判斷及實現(xiàn)

      // 鬧鈴聲音的實現(xiàn)

      public void actionPerformed(ActionEvent e) {

      // JMenuItem m = (JMenuItem) e.getSource();

      if (e.getActionCommand() == "CC") {

      int newHou, newMin;

      char c;

      String getTime = JOptionPane.showInputDialog(this, "請輸入鬧鈴時間格式如:", "00:00");

      repaint();

      //如果撤消設(shè)置時間,就什么打印null

      if(getTime==null)

      System.out.println(getTime);

      // dispose();

      judge: if (getTime != null) {

      //打印輸入的設(shè)置的時間

      System.out.println(getTime);

      // 判斷輸入的是不是5位字符

      if (getTime.length() != 5) {

      JOptionPane.showMessageDialog(time, "格式錯誤\n請按格式輸入5位數(shù)字", "Error",

      JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      // 判斷輸入的是不是數(shù)字

      for (int i = 0; i (getTime.length()); i++) {

      c = getTime.charAt(i);

      if (i == 2 !Character.isDigit(c))

      continue;

      // 判斷當前字符,如果不是數(shù)字則跳出該事件

      if (i != 2 !Character.isDigit(c)) {

      JOptionPane.showMessageDialog(this, "格式錯誤\n請按格式輸入5位數(shù)字",

      "Error",JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      }

      char[] hour = { getTime.charAt(0), getTime.charAt(1) };

      char[] minute = { getTime.charAt(3), getTime.charAt(4) };

      newHou = Integer.parseInt(String.valueOf(hour));

      newMin = Integer.parseInt(String.valueOf(minute));

      if (newHou = 24 || newHou 0) {

      JOptionPane.showMessageDialog(this, "格式錯誤\n小時應(yīng)該是不小于0不大于23的正數(shù)",

      "Error", JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      if (newMin = 60 || newHou 0) {

      JOptionPane.showMessageDialog(this, "格式錯誤\n分鐘應(yīng)該是小于60的正數(shù)", "Error",

      JOptionPane.ERROR_MESSAGE);

      repaint();

      break judge;

      }

      new SetTime(newHou, newMin);

      }

      }

      if (e.getActionCommand() == "ring1") {

      toolkit=Toolkit.getDefaultToolkit();

      }

      if(e.getActionCommand() == "ring2"){

      System.out.println("靜音");

      toolkit=null;

      }

      if (e.getActionCommand() == "color1") {

      String color;

      Color c;

      System.out.println("color1");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的外圈顏色(0--255)", "128");

      if (color == null) {

      } else {

      if (Integer.parseInt(color) 0

      || Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的外圈顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C1 = c;

      }

      }

      }

      if(e.getActionCommand() == "color2"){

      String color;

      Color c;

      System.out.println("color2");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的邊線顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的邊線顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C2 = c;

      }

      }

      }

      if(e.getActionCommand() == "color3"){

      String color;

      Color c;

      System.out.println("color3");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的內(nèi)盤顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的內(nèi)盤顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C3 = c;

      }

      }

      }

      if(e.getActionCommand() == "color4"){

      String color;

      Color c;

      System.out.println("color4");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的背景顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的背景顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C4 = c;

      }

      }

      }

      if(e.getActionCommand() == "color5"){

      String color;

      Color c;

      System.out.println("color5");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的秒針顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的秒針顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C5 = c;

      }

      }

      }

      if(e.getActionCommand() == "color6"){

      String color;

      Color c;

      System.out.println("color6");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的分針顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的分針顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C6 = c;

      }

      }

      }

      if(e.getActionCommand() == "color7"){

      String color;

      Color c;

      System.out.println("color7");

      color = JOptionPane.showInputDialog(this, "請輸入喜歡的時針顏色(0--255)", "128");

      if(color==null){}

      else{if (Integer.parseInt(color) 0|| Integer.parseInt(color) 255)

      JOptionPane.showInputDialog(this, "請輸入喜歡的時針顏色(0--255)", "128");

      else {

      c = new Color(Integer.parseInt(color));

      C7 = c;

      }

      }

      }

      if(e.getActionCommand() == "help"){

      String help;

      help = JOptionPane.showInputDialog(this, "輸入quit退出該鬧鐘的使用", "這是運行在Java中的指針式時鐘");

      if(help.equals("quit"))

      dispose();

      else {}

      // timer.restart();

      }

      }

      class SetTime {

      String Hour;

      String Minute;

      public SetTime() { }

      public SetTime(int hour, int minute) {

      // 當時間參數(shù)小于10的時候在前面添加字符0

      if (hour 10) {

      Hour = "0" + String.valueOf(hour);

      } else {

      Hour = "" + String.valueOf(hour);

      }

      if (minute 10) {

      Minute = "0" + String.valueOf(minute);

      } else {

      Minute = "" + String.valueOf(minute);

      }

      alarm = Hour + ":" + Minute;

      time.setText(alarm);

      repaint();

      }

      }

      }


      文章題目:鬧鐘java設(shè)計代碼 java鬧鐘程序
      本文地址:http://www.ef60e0e.cn/article/dopjsdc.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        广安市| 萝北县| 饶平县| 化德县| 辰溪县| 大石桥市| 斗六市| 高唐县| 林芝县| 长岭县| 雷山县| 墨脱县| 富宁县| 阿荣旗| 平远县| 大安市| 石楼县| 巴青县| 高邑县| 淮南市| 维西| 宁南县| 宜良县| 什邡市| 淳化县| 大丰市| 互助| 麦盖提县| 景德镇市| 江津市| 来安县| 宝应县| 安仁县| 古交市| 冀州市| 襄垣县| 益阳市| 乌兰浩特市| 马鞍山市| 鄂托克前旗| 司法|