利用Java制作倒计时
2012-10-15 19:15
302 查看
import java.awt.*; import java.awt.event.*; import java.util.*; import javax.swing.*; public class Clock extends JFrame { private Dialog dialog; public static void main(String[] args) { Clock f = new Clock(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); } class MyDialog extends Dialog implements WindowListener, ActionListener { JLabel label; JPanel panel1, panel2; JButton button; public MyDialog(Frame owner, String title, boolean modal) { super(owner, title, modal); // TODO Auto-generated constructor stub label = new JLabel("时间到!"); button = new JButton("确定"); panel1 = new JPanel(); panel2 = new JPanel(); panel1.setLayout(new BorderLayout()); panel1.add("Center", label); panel2.add("Center", button); this.add("Center", panel1); this.add("South", panel2); this.setSize(200, 200); this.setResizable(false); this.addWindowListener(this); button.addActionListener(this); } public void windowOpened(WindowEvent e) { // TODO Auto-generated method stub } public void windowClosing(WindowEvent e) { // TODO Auto-generated method stub this.setVisible(false); } public void windowClosed(WindowEvent e) { // TODO Auto-generated method stub } public void windowIconified(WindowEvent e) { // TODO Auto-generated method stub } public void windowDeiconified(WindowEvent e) { // TODO Auto-generated method stub } public void windowActivated(WindowEvent e) { // TODO Auto-generated method stub } public void windowDeactivated(WindowEvent e) { // TODO Auto-generated method stub } public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub this.setVisible(false); } } Clock() { setTitle("倒计时"); setSize(320, 120); dialog = new MyDialog(this, "提示:", true); ClockPanel p = new ClockPanel(); add(p); } class ClockPanel extends JPanel { private JButton b; private boolean onetime = true;; private JLabel lfen, lmiao, l; private JTextField tf, tm; ClockPanel() { b = new JButton("开始倒计时"); lfen = new JLabel("分"); lmiao = new JLabel("秒"); l = new JLabel("00:00"); tf = new JTextField(3); tm = new JTextField(3); l.setFont(new Font("宋体", Font.BOLD, 30)); l.setForeground(Color.RED); b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { if (onetime) { if (tf.getText().trim().equals("")) { tf.setText("00"); } if (tm.getText().trim().equals("")) { tm.setText("00"); } new ChangeLabel(tf.getText().trim() + ":" + tm.getText().trim()).start(); } } }); add(tf); add(lfen); add(tm); add(lmiao); //添加秒 add(b); add(l); } class ChangeLabel extends Thread // 运行秒针线程 { private int minitues; private String Sminitues; private int sound; private String Ssound; private String LabelTime; public ChangeLabel(String time) { // TODO Auto-generated constructor stub onetime = false; this.minitues = Integer.parseInt(time.substring(0, time.indexOf(':'))); this.sound = Integer .parseInt(time.substring(time.indexOf(':') + 1)); } private long time1; private long time2; public void run() { time1 = System.currentTimeMillis(); while (true) { time2 = System.currentTimeMillis(); while (!(minitues == 0 & sound == 0) && time2 >= time1 + 1000) { time1 = time2; if (sound == 0) { sound = 59; minitues--; } else { sound--; } LabelTime = this.getTime(); display(); } if (minitues == 0 && sound == 0) { dialog.setVisible(true); onetime = true; break; } } } private String getTime() { if (minitues < 10) this.Sminitues = "0" + minitues; else this.Sminitues = "" + minitues; if (sound < 10) this.Ssound = "0" + sound; else this.Ssound = "" + sound; return this.Sminitues + ":" + this.Ssound; } public void display() { /* * 显示倒计时 */ l.setText(this.LabelTime); } } } }
______________________________________________
另外一个
60秒倒计时的一个小JAVASCRIPT
<table name=agree border="0" cellpadding="10" cellspacing="0" align=center width="80%">
<tr align=center>
<td width="50%" align="right">
<FORM name=register method=post action=reg_shang.ASP?action=yes>
<input type="hidden" name="action" value="agree"><INPUT class="go-wenbenkuang" type=submit value=" 同意注册 " name=Submit>
</FORM>
</td>
<td width="50%" align="left">
<FORM action=index.asp method=post><INPUT class=go-wenbenkuang type=submit value=" 我不同意 "></FORM></td>
</tr>
</table>
<SCRIPT>
secs = 60; // Number of secs to delay -CHINA-studio
wait = secs * 100;
document.forms.register.Submit.disabled =true;
for(i=1;i<=(wait/100);i++) {
window.setTimeout("doUpdate(" + i + ")", i * 100);
}
window.setTimeout("Timer()", wait);
function doUpdate(num) {
if(num == (wait/100)) {
document.forms.register.Submit.value = " 同意注册 ";
} else {
wut = (wait/100)-num;
document.forms.register.Submit.value = " 同意前请先阅读 (" + wut + ")";
}
}
function Timer() {
document.forms.register.Submit.disabled =false;
}
</SCRIPT>
---另外一种直接可以解析的方法
<script>
<!--
//获得当前时间,刻度为一千分一秒
var initializationTime=(new Date()).getTime();
function showLeftTime(){
var now=new Date();
var year=now.getYear();
var month=now.getMonth();
var day=now.getDate();
var hours=now.getHours();
var minutes=now.getMinutes();
var seconds=now.getSeconds();
document.all.show.innerHTML="当前时间:"+year+"年"+month+"月"+day+"日"+hours+"小时"+minutes+"分"+seconds+"秒";
//设定结束时间
//1秒=1000毫秒
endTime=initializationTime+60000;
//设定并显示剩余时间
var leftTime=Math.floor((endTime-(new Date()).getTime())/1000);
if(leftTime>0)
{
document.all.showLeft.innerHTML=leftTime+"微秒后停止!";
}
else
{
clearTimeout(timeID);
document.all.showLeft.innerHTML="TimeOut!";
return false;
}
//一秒刷新一次显示时间
var timeID=setTimeout(showLeftTime,1000);
}
//-->
</script>
相关文章推荐
- 【Android】利用表格布局,Android中xml文件与java的交互制作登录界面
- 将利用acm.jar制作的java做成applet
- 利用JAVA制作简单登录窗口
- 利用JSmooth将java项目制作成exe可执行文件
- 利用java制作简单的音乐播放器
- java完整的利用itext7制作pdf、二维码图片插入pdf,并解析pdf中的二维码信息
- 利用java的swing组件制作简易计算器
- Java第十二次作业:什么是一维数组?什么是对象数组?吃金币游戏2.0版 新增炸弹功能 新增游戏倒计时功能 新增胜利失败检测功能 使用如鹏游戏引擎制作窗体 一维数组设置金币
- 利用Java制作计算器的界面
- 利用Java制作仿Windows记事本(功能齐全)
- wps制作pdf模板,Adobe Acrobat DC利用pdf模板做填充数据表单域,在maven项目中利用java生成pdf
- 实操利用PowerPoint制作倒计时
- 利用Java制作一个简单的QQ登录界面
- 利用java/android 模拟网页表单提交。可用于爬虫和wif登录器制作
- 利用JavaScript制作倒计时牌
- 利用java制作一个小的目录查询器的方法
- java中利用properties制作配置文件
- 利用Java配合BCB 4.0制作CPU特征侦测器
- java入门实例之小试牛刀--利用Scanner制作个人简历
- java入门实例之小试牛刀--利用Scanner制作个人简历