java如何实现自定义时钟并走时功能
短信预约 -IT技能 免费直播动态提醒
本文小编为大家详细介绍“java如何实现自定义时钟并走时功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“java如何实现自定义时钟并走时功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
效果图:
很多人想要自己用代码实现一个简单的时钟,显示时间,下面是我用JAVA写的一个时钟测试类
首先,我们先定义一个Time类,里面存放我们需要的setTime方法,可以自定义设定我们想要的时分秒,toUniversal()和toStandard()两个成员方法分别对应两种时间制,24小时和12小时。
public class Time { public int hour; public int minute; public int second; public Time(){ setTime(0,0,0); }; public void setTime(int h,int m,int s){ this.hour=((h>=0&&h<24)?h:0); this.minute=((m>=0&&m<60)?m:0); this.second=((s>=0&&s<60)?s:0); } public String toUniversal(){ return hour+":"+minute+":"+second; } public String toStandard(){ return((hour==12||hour==0)?12:hour%12)+":"+minute+":"+second +(hour<12?"AM":"PM"); }}
我们之后再写一个类,在里面实现我们的功能:
import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.util.Timer;import java.util.*; public class TimeTest{ //全员静态变量 static Integer i1=0,i2=0,i3=0;//时分秒 static Time tt=new Time();//创建一个对象 static TextField ta = new TextField(30);//两个文本框存放两个时间 static TextField ka=new TextField(30); static Timer timer=new Timer();//设置一个Timer //设置静态函数进行时间转换和timer时间调度器 public static void fun(){ TimerTask task=new TimerTask() { @Override //run走针操作 public void run() { if(i3==60) {i3=0; i2++; if(i2==60) { i1++; i2=0; if(i1==24){ i1=0; } } } tt.setTime(i1,i2,i3); String s1= tt.toUniversal(); String s2=tt.toStandard(); ta.setText(s1);//将获取的两个时间存放到文本域里面 ka.setText(s2); i3++;//秒针自加 } }; timer.schedule(task,0,1000);//timer调度器从0开始,间隔一秒调度一次 } public static void main(String[] args) { Frame frame = new Frame("钟表的测试类"); TextField text1=new TextField("时"); TextField text2=new TextField("分"); TextField text3=new TextField("秒"); JButton button=new JButton("确认"); Font f=new Font("仿宋",Font.BOLD+Font.CENTER_BASELINE,30); ta.setFont(f); ka.setFont(f); ta.setBackground(Color.GRAY); ka.setBackground(Color.GRAY); text1.setFont(f); text2.setFont(f); text3.setFont(f); //button事件响应 button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { String d0=text1.getText().trim(); String d2=text2.getText().trim(); String d3=text3.getText().trim(); i1=Integer.valueOf(d0); i2=Integer.valueOf(d2); i3=Integer.valueOf(d3); tt.setTime(i1,i2,i3); } }); //调用fun函数 fun(); Box aBox=Box.createVerticalBox(); aBox.add(text1); aBox.add(text2); aBox.add(text3); aBox.add(button); Box bBox=Box.createVerticalBox(); bBox.add(ta); bBox.add(ka); Box cBox = Box.createHorizontalBox(); cBox.add(bBox); cBox.add(aBox); //将cBox加入到frame框架里面 frame.add(cBox); //关闭frame窗口 frame.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); frame.pack(); frame.setVisible(true); }}
里面用到了awt相关的类,做界面的时候很方便,大家如果看不懂,可以先去熟悉一下awt类,很容易上手,而且走时功能也只需要一个timer调度器便可以实现。
读到这里,这篇“java如何实现自定义时钟并走时功能”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341