2.手动设置响铃时间(时分秒)。
3.快速设定响铃时间。
4.显示所剩时间(时分秒)。
5.闹钟震动并响铃。
6.终止设定的闹钟。
7.选择背景音乐。
8.试听背景音乐。
9.停止试听。
10.更换闹钟界面背景图片。"/>
工作时间 周一至周六 :8:30-17:00 联系方式 电话:021-51360000 地址:浦东新区金吉路778号1幢703 email:embedchina@163.com 客服热线:18717992104 技术咨询:17811901598 |
用java设计智能闹钟浏览数:620次
智能闹钟 程序目前实现的主要功能 显示当前本地时间(时分秒)。 手动设置响铃时间(时分秒)。 快速设定响铃时间。 显示所剩时间(时分秒)。 闹钟震动并响铃。 终止设定的闹钟。 选择背景音乐。 试听背景音乐。 停止试听。 更换闹钟界面背景图片。 主要功能实现方法简介 1.闹钟用户图形界面:采用Java GUI编程工具包Swing和AWT进行图形界面设计。主要使用的控件有Java Swing JMenuBar,JMenu,JMenuItem,JLable,JButton,Timer以及JComboBox。 2.显示本地时间:使用Calendar抽象类获取本地时间并采用getInstance()方法来创建对象。所获取的本地时间再通过SimpleDateFormat类转换成所需要的格式。 3.设置响铃时间:手动设置响铃时间主要通过三个JComboBox来让用户选择需要定时的时间,当用户通过下拉框选择了确定时间以后,通过getHour(),getMunite(),getSecond()三个方法获取用户所选时间。自动设置响铃时间则是通过用户界面的六个JButton进行设置,六个JButton功能依次为:增加1分钟,增加5分钟,增加30分钟,减少1分钟,减少5分钟,减少30分钟(都是基于当前时间)。当用户按下按键后,对应的数字将会存入addActionListener(this)中。 4.选择背景音乐、试听背景音乐和停止试听:用户通过JComboBox选择预先存放于文件夹中的背景音乐(音乐格式为.wav),当用户点击试听按钮后,将会通过Thread()新建一个线程,并采用star()方法将线程启动,开始播放音乐。当用户点击停止按钮后,采用interrupt()方法将线程停止,停止播放音乐。 public void myListener() { new Thread(new Runnable() {// 设置一个线程 public void run() { while (true) { try { Thread.sleep(1000); } catch (Exception e) { e.printStackTrace(); } executeSound();// 播放声音 } } }).start(); } 5.闹铃功能:当用户设置好响铃时间并选择好背景音乐之后,系统创建一个线程,通过now.setText(now())获取当前时间和result.setText(surplus_time())得到剩余时间,并使用Timer实时刷新当前时间和剩余时间,显示在图形界面之中。当本地时间与预先设置的闹铃时间一致即剩余时间为零时,图形界面显示“时间到了哦”,而后系统预先创建的音乐播放线程executeSound()启动,开始播放背景音乐,同时通过图形界面坐标实时变化的方法来实现震动功能。 public void timeListener() { new Thread(new Runnable() {// 设置一个线程 public void run() { while (true) { try { Thread.sleep(1000); } catch (Exception e) { e.printStackTrace(); } initMainPanel(); now.setText(now());// 得到系统时间 result.setText(surplus_time());// 得到剩余时间 } } }).start(); } 6.更换背景图片:用户点击更换背景图片后,系统自动从文件夹中获取下一张图片,将图片上传后更新到Panel并显示。 private void changeBG() { setFlagOfBackground(true); if (background < AlarmBackground.getBackgroundListSize()) { iconed = true; setVisible(false); if (background != AlarmBackground.getBackgroundListSize() - 1) { ++background; } else { background = 0; } initMainPanel(); } } 运行效果图 总体功能
|