免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2594 | 回复: 11
打印 上一主题 下一主题

各位,谁能给个倒记时的代码?? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-10-17 20:26 |只看该作者 |倒序浏览
各位,谁能给个如:
现在离开会只剩1小时54分16秒了
谁能给个这样的代码???谢了先

论坛徽章:
0
2 [报告]
发表于 2004-10-17 22:28 |只看该作者

各位,谁能给个倒记时的代码??

要做到实时刷新的话要用java多线程实现 事件线程更新GUI 工作线程刷新时间!

论坛徽章:
0
3 [报告]
发表于 2004-10-18 09:15 |只看该作者

各位,谁能给个倒记时的代码??

这是我刚写的代码
这里要注意传递给线程的变量要声明为final的
import java.awt.*;
import java.awt.event.*;
import java.text.DateFormat;
import java.text.ParseException;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

import javax.swing.*;

/**
* @author Administrator
*
* 更改所生成类型注释的模板为
* 窗口 >; 首选项 >; Java >; 代码生成 >; 代码和注释
*/
public class TestTimer {

       
        private JFrame f;
                public static void main(String[] args) {
                        TestTimer t=new TestTimer();
                        try {
                                t.go();
                        } catch (ParseException e) {
                                // TODO 自动生成 catch 块
                                e.printStackTrace();
                        }
               
                }
                public TestTimer(){
                }
                public void go() throws ParseException{
                        final JLabel label;
                        JButton bt1;               
                        final Date dueDate;
                        DateFormat df=DateFormat.getDateTimeInstance();
                        dueDate = df.parse("2004-10-18 18:00:00";
                        JButton bt2;
                        bt1=new JButton("bt1";
                        bt2=new JButton("bt2";
                        label=new JLabel(" ";
                        bt1.addActionListener(new ActionListener(){                       
                                public void actionPerformed(ActionEvent e) {
                                        // TODO 自动生成方法存根
                                        Timer timer1=new Timer();
                                        timer1.schedule(new TimerTask(){
                                                public void run(){
                                                        Date date=new Date();
                                                        long now=date.getTime();
                                                        long countDown=dueDate.getTime()-now;
                                                        countDown/=1000;
                                                        String str=String.valueOf(countDown%60)+"seconds ";
                                                        countDown/=60;
                                                        str=String.valueOf(countDown%60)+" minutes "+str;
                                                        countDown/=60;
                                                        str=String.valueOf(countDown%24)+" hours "+str;                                                       
                                                        countDown/=24;
                                                        str="leaves "+String.valueOf(countDown)+" days "+str;
                                                        label.setText(str);
                                                }
                                        },100,1000);
               
                                }
                        });
                        f =new JFrame("testTimer";
                        f.addWindowListener(new WindowListener(){

                                public void windowOpened(WindowEvent e) {
                                        // TODO 自动生成方法存根
       
                                }

                                public void windowClosing(WindowEvent e) {
                                        // TODO 自动生成方法存根
                                        System.exit(0);
                                }

                                public void windowClosed(WindowEvent e) {
                                        // TODO 自动生成方法存根
       
                                }

                                public void windowIconified(WindowEvent e) {
                                        // TODO 自动生成方法存根
       
                                }

                                public void windowDeiconified(WindowEvent e) {
                                        // TODO 自动生成方法存根
       
                                }

                                public void windowActivated(WindowEvent e) {
                                        // TODO 自动生成方法存根
       
                                }

                                public void windowDeactivated(WindowEvent e) {
                                        // TODO 自动生成方法存根
       
                                }

                        });
                        f.getContentPane().setLayout(new FlowLayout());
                        f.getContentPane().add(bt1);
                        f.getContentPane().add(bt2);
                        f.getContentPane().add(label);
                        f.pack();
                        f.setVisible(true);

                }
       
}

论坛徽章:
0
4 [报告]
发表于 2004-10-18 14:35 |只看该作者

各位,谁能给个倒记时的代码??

今天晚上给你,现在没时间

论坛徽章:
0
5 [报告]
发表于 2004-10-18 14:36 |只看该作者

各位,谁能给个倒记时的代码??

首先,谢谢各位了
不过,我想要的是javascript
网页上用的,不知道谁能给一个呀
不胜感激

论坛徽章:
0
6 [报告]
发表于 2004-10-18 15:29 |只看该作者

各位,谁能给个倒记时的代码??

你可以做成applet
我也想看看javascript怎么写这个
有人写出来的话
我也来学学

论坛徽章:
0
7 [报告]
发表于 2004-10-18 19:44 |只看该作者

各位,谁能给个倒记时的代码??

javascript写的

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">;
  2. <HTML>;
  3. <HEAD>;
  4. <TITLE>; 倒记时 </TITLE>;
  5. <META NAME="Generator" CONTENT="EditPlus">;
  6. <META NAME="Author" CONTENT="">;
  7. <META NAME="Keywords" CONTENT="">;
  8. <META NAME="Description" CONTENT="">;
  9. </HEAD>;

  10. <BODY onLoad="showtime()">;
  11. <script language="javascript">;
  12. var timenum = null;
  13. var timeon = false;
  14. function stopclock()
  15. {
  16.         if(timeon)
  17.         {
  18.                 clearTimeout(timenum);
  19.         }
  20.         timeon = false;
  21. }

  22. function startclock()
  23. {
  24.         stoptime();
  25.         showtime();
  26. }

  27. function showtime()
  28. {
  29.         var date = new Date();
  30.         var year = date.getYear();
  31.         var month = date.getMonth();
  32.         var day = date.getDate();
  33.         var hours = date.getHours();
  34.         var mins = date.getMinutes();
  35.         var secs = date.getSeconds();
  36.         var hours_minus = 22-hours;
  37.         var mins_minus = 59-mins;
  38.         var secs_minus = 59-secs;
  39.         if((month+1)==1)
  40.         {
  41.                 var days = 28+31*5+30*3+1-day;
  42.         }
  43.         if((month+1)==2)
  44.         {
  45.                 var days = 31*4+30*3+1-day;
  46.         }
  47.         if((month+1)==3)
  48.         {
  49.                 var days = 31*4+30*3+1-day;
  50.         }
  51.         if((month+1)==4)
  52.         {
  53.                 var days = 31*3+30*3+1-day;
  54.         }
  55.         if((month+1)==5)
  56.         {
  57.                 var days = 31*3+30*2+1-day;
  58.         }
  59.         if((month+1)==6)
  60.         {
  61.                 var days = 31*2+30*2+1-day;
  62.         }
  63.         if((month+1)==7)
  64.         {
  65.                 var days = 31*2+30+1-day;
  66.         }
  67.         if((month+1)==8)
  68.         {
  69.                 var days = 31+30+1-day;
  70.         }
  71.         if((month+1)==9)
  72.         {
  73.                 var days = 30+1-day;
  74.         }
  75.         if((month+1)==10)
  76.         {
  77.                 var days = 1-day;
  78.                 var minus = days+"天"+hours_minus+"小时"+mins_minus+"分"+secs_minus+"秒";
  79.                 document.clock.face.value = minus;
  80.                 timenum = setTimeout("showtime()",1000);
  81.                 timeon = true;
  82.         }
  83. }
  84. </script>;
  85. <form name="clock">;
  86. <p align="center">;
  87. <input type="text" name="face" size="56" style="background-color":#aabbff;>;
  88. </p>;
  89. </form>;
  90. </BODY>;
  91. </HTML>;

复制代码

论坛徽章:
0
8 [报告]
发表于 2004-10-18 22:37 |只看该作者

各位,谁能给个倒记时的代码??

谢谢 傲雪寒梅 !!!

论坛徽章:
0
9 [报告]
发表于 2004-10-18 22:45 |只看该作者

各位,谁能给个倒记时的代码??

怪了,应该是在
timenum = setTimeout("showtime()",1000);

这里设置时间的吧,我把1000改为500
怎么倒记时显示仍然没有变化呀???

论坛徽章:
0
10 [报告]
发表于 2004-10-19 00:00 |只看该作者

各位,谁能给个倒记时的代码??

下面还是定时炸弹的程序呢

  1. /*
  2. * Created on 2004-10-18
  3. *
  4. * TODO To change the template for this generated file go to
  5. * Window - Preferences - Java - Code Style - Code Templates
  6. */
  7. package TEST;
  8. /**
  9. * @author jxd
  10. *
  11. * TODO To change the template for this generated type comment go to
  12. * Window - Preferences - Java - Code Style - Code Templates
  13. */
  14. public class TimeBomb extends Thread
  15. {
  16.         int second = 0;
  17.         public TimeBomb()
  18.         {
  19.                 System.out.println("自毁装置已经启动,3分钟后爆炸,所有人员请迅速撤离!");
  20.         }
  21.        
  22.         public void run()
  23.         {
  24.                 try
  25.                 {
  26.                         for(;;)
  27.                         {
  28.                                 second++;
  29.                                 System.out.println(second);
  30.                                 if(second >;= 180)
  31.                                 {
  32.                                         System.out.println("爆炸");
  33.                                         TimeBomb.interrupted();
  34.                                         break;
  35.                                 }
  36.                                 TimeBomb.sleep(1000);
  37.                         }
  38.                 }
  39.                 catch(InterruptedException e)
  40.                 {
  41.                         e.printStackTrace();
  42.                 }
  43.                 catch(SecurityException e)
  44.                 {
  45.                         e.printStackTrace();
  46.                 }
  47.         }
  48.         public static void main(String args[])
  49.         {
  50.                 new TimeBomb().start();
  51.         }
  52. }

复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP