线程Thread实现界面定时提醒功能与时间显示
来源:互联网 发布:淘宝店铺装修宝贝分类 编辑:程序博客网 时间:2024/05/21 09:32
因为最近在做面向对象的实习,所以查阅了一些相关的资料搞出了点东西。
最开始是想怎样可以让他在不受控制的时候,就可以在后台显示时间,那方法也比较简单,分享给大家
import java.text.SimpleDateFormat;import java.util.Date;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;public class Remind implements Runnable{JLabel jj;JFrame jFrame;String rtime=null;String thing;Remind(JLabel J1) {jj=J1;// TODO Auto-generated constructor stub}Remind(String f,JFrame Jf,String sj) {rtime=f;jFrame=Jf;thing=sj;}int time=0;SimpleDateFormat m=new SimpleDateFormat("hh:mm:ss");//从系统获取时间Date date;public void run(){while(true){date=new Date();System.out.println(m.format(date));jj.setText(m.format(date));if(rtime!=null){if(m.format(date).equals(rtime)){JOptionPane.showMessageDialog(jFrame, thing);return;}}time++;try{Thread.sleep(1000);}catch(InterruptedException e){}}}}
Remind(JLabel J1)选择一个JLabel,用来显示时间,线程运行后开始会获取系统时间,然后每隔1000毫秒(一秒)更新一次,大概效果就是这样
然后控制台也有相应输出。
第二种构造方法就是
Remind(String f,JFrame Jf,String sj)传入字符串f,也就是提醒的时间
JFrame Jf 提醒的窗口位置,从哪个窗口提醒,可以考虑写null
字符串sj是提示信息
到达f写的时间就会提醒,主要f的格式(小时:分钟:秒)
可以在主程序中这样来书写:
构造方法一:
JLabel jl = new JLabel();// 注意类名别写错了。 frame.getContentPane().add(jl); jl.setText("这是新窗口"); Remind r1=new Remind(jl); Thread qThread=new Thread(r1); qThread.start();构造方法二:
String time="08:00:00";
String remindMessage="Wake me up"
Remind r1=new Remind(time,null,remindMessage); Thread qThread=new Thread(r1); qThread.start();希望能帮到大家~
1 0
- 线程Thread实现界面定时提醒功能与时间显示
- 通过WEB实现的定时提醒功能...
- 通过WEB实现的定时提醒功能
- OA里面定时提醒功能实现
- 使用setTimeout,实现定时提醒功能
- android 每天定时提醒功能实现
- Android后台定时提醒功能实现
- Android后台定时提醒功能实现
- android 每天定时提醒功能实现
- AlarmManager+Notification实现定时通知提醒功能
- Android后台定时提醒功能实现
- [C#]Thread与委托实现定时刷新数据功能
- 一个简陋的自定义用线程Thread实现的计时器Timer,可以增加定时时间
- Android AlarmManager实现不间断轮询服务(定时提醒功能)
- 通过广播接收者来实现定时提醒功能
- Android定时推送通知/提醒功能的实现
- 文本框显示提醒功能
- 线程Thread与Runnable实现
- AAA是Authentication(认证)配置
- 判断字符串中是否含有表情iOS
- 完全卸载ORACLE-经验笔记
- erase的正确使用
- Java集合HashSet<T>,TreeSet<T>的使用
- 线程Thread实现界面定时提醒功能与时间显示
- java 静态(static)变量放在那里?
- 模糊测试流程----fuzz笔记(1)
- (OK) IPv6 does not work over bridge
- android 性能测试工具Emmagee介绍
- struts2整合json要注意的问题
- Android Screen Monitor抓取模拟器与真机界面
- UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 117: ordinal not in range(128)
- 搭建ciscoR&S的实验环境