用java制作的简易倒计时器(主要可用于考试系统中考试剩余时间显示)
来源:互联网 发布:手机淘宝店铺名怎么改 编辑:程序博客网 时间:2024/06/05 09:18
import java.awt.BorderLayout;
import java.awt.Font;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
import java.util.Timer;
import java.util.TimerTask;
import javax.swing.JFrame;
import javax.swing.JLabel;
/**
* 制作一个可以显示倒计时的界面,显示的倒计时格式是:HH:mm:ss
* (该倒计时器主要是用在比如考试系统倒计时上面!)。
* @author dukangcheng
*
*/
public class CountDown{
private JLabel label;
public static void main(String[]args){
CountDown cn=new CountDown();
}
public CountDown(){
countDown();
}
public void countDown(){
//创建窗体对象倒计时的内容将显示在该窗体上面
JFrame frame=new JFrame();
frame.setSize(400,150);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//将倒计时字幕显示在正中间
label=new JLabel("",JLabel.CENTER);
frame.setLayout(new BorderLayout());
frame.add(label,BorderLayout.CENTER);
frame.setVisible(true);
/*
* 设置倒计时的时间长度
* 创建timer对象,再根据timer的schedule方法创键匿名内部类
* 并实现线程
*/
System.out.println("请输入需要设定的倒计时长:");
Scanner input=new Scanner(System.in);
//i可以设计成任意的大小,不是固定的
int i=input.nextInt();
final long end=System.currentTimeMillis()+i*1000*60;
Timer timer=new Timer();
timer.schedule(new TimerTask() {
//获取剩余的倒计时长
public void run() {
long sub=end-System.currentTimeMillis();
if(sub<0){
return;
}
updateTimer(sub);
}
},0,1000);
}
//显示成HH:mm:ss样的格式,刷新剩余的时长
public void updateTimer(long sub){
int h=(int)(sub/1000/60/60);
int m=(int)(sub/1000/60%60);
int s=(int)(sub/1000%60);
String str=h+":"+m+":"+s;
//将String类型转换成Date类型的格式
SimpleDateFormat sdf=new SimpleDateFormat("HH:mm:ss");
Date date=new Date();
Font font=new Font("Default", Font.PLAIN, 40);
label.setFont(font);
try{
date=sdf.parse(str);
}catch(Exception e){
e.printStackTrace();
}
//将Date类型的数设置成想要显示的时间格式,并写入JLable中
label.setText(sdf.format(date));
System.out.println(sdf.format(date));
}
}
import java.awt.Font;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
import java.util.Timer;
import java.util.TimerTask;
import javax.swing.JFrame;
import javax.swing.JLabel;
/**
* 制作一个可以显示倒计时的界面,显示的倒计时格式是:HH:mm:ss
* (该倒计时器主要是用在比如考试系统倒计时上面!)。
* @author dukangcheng
*
*/
public class CountDown{
private JLabel label;
public static void main(String[]args){
CountDown cn=new CountDown();
}
public CountDown(){
countDown();
}
public void countDown(){
//创建窗体对象倒计时的内容将显示在该窗体上面
JFrame frame=new JFrame();
frame.setSize(400,150);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//将倒计时字幕显示在正中间
label=new JLabel("",JLabel.CENTER);
frame.setLayout(new BorderLayout());
frame.add(label,BorderLayout.CENTER);
frame.setVisible(true);
/*
* 设置倒计时的时间长度
* 创建timer对象,再根据timer的schedule方法创键匿名内部类
* 并实现线程
*/
System.out.println("请输入需要设定的倒计时长:");
Scanner input=new Scanner(System.in);
//i可以设计成任意的大小,不是固定的
int i=input.nextInt();
final long end=System.currentTimeMillis()+i*1000*60;
Timer timer=new Timer();
timer.schedule(new TimerTask() {
//获取剩余的倒计时长
public void run() {
long sub=end-System.currentTimeMillis();
if(sub<0){
return;
}
updateTimer(sub);
}
},0,1000);
}
//显示成HH:mm:ss样的格式,刷新剩余的时长
public void updateTimer(long sub){
int h=(int)(sub/1000/60/60);
int m=(int)(sub/1000/60%60);
int s=(int)(sub/1000%60);
String str=h+":"+m+":"+s;
//将String类型转换成Date类型的格式
SimpleDateFormat sdf=new SimpleDateFormat("HH:mm:ss");
Date date=new Date();
Font font=new Font("Default", Font.PLAIN, 40);
label.setFont(font);
try{
date=sdf.parse(str);
}catch(Exception e){
e.printStackTrace();
}
//将Date类型的数设置成想要显示的时间格式,并写入JLable中
label.setText(sdf.format(date));
System.out.println(sdf.format(date));
}
}
0 0
- 用java制作的简易倒计时器(主要可用于考试系统中考试剩余时间显示)
- 在线考试的剩余时间显示问题(JavaScript)
- java案例开发考试系统中的数据交互模块的主要类
- 考试倒计时计时器
- javasprint 在线考试计时器
- [考试维护]时隔半年的考试系统
- 考试系统的dao
- 考试系统的VO
- 考试系统的设计
- 考试系统的倒计时
- 考试系统的收获
- 考试系统的收获
- 用Authorware制作考试程序
- 用js编写的考试系统倒计时
- [JAVA考试系统]项目总结
- java swing版考试系统
- 考试系统
- unity3D中加入简单的倒计时器
- 求两数的和,差,积(指针函数作为形参)
- java.lang.NoClassDefFoundError: com/sun/mail/util/MailLogger for JUnit test case for Java mail
- mfc中隐藏菜单栏,工具栏,最大/小化按钮等
- Java并发编程:Lock
- GO语言UDP小笔记
- 用java制作的简易倒计时器(主要可用于考试系统中考试剩余时间显示)
- JAVA base64
- Ray Wenderlich的swift教程04--布局,添加图片,音频
- 1.1、开启一个子线程,发送短信
- 红黑树 vs AVL
- Java抛出异常
- Android的shape使用
- java 调用 库文件错误查找方法
- 神奇效果