「计时器java代码」java计数器代码

博主:adminadmin 2022-11-21 22:31:06 57

本篇文章给大家谈谈计时器java代码,以及java计数器代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

用JAVA编写计时器

计时器可以使用timer类也可以使用线程类来操作,下面是Thread做的简单的计时器

public class Calculagraph extends Thread {

public static void main(String[] args) {

new Calculagraph().start();

}

private long now = 0l;

private long start = System.currentTimeMillis();// 程序启动时间的毫秒值

private long time;

public void run() {

while (true) {

now = System.currentTimeMillis();// 获取一秒之后的毫秒值

time = now - start;// 两个时间相减的到毫秒差

System.out.format("%02d:%02d:%02d\n",

time / (1000 * 60 * 60) % 60/* 时 */, 

time / (1000 * 60)% 60/* 分 */, 

time / 1000 % 60/* 秒 */);// 格式化字符串输出

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

}

「计时器java代码」java计数器代码

用java编写一个倒计时器代码。

import java.awt.BorderLayout;import java.awt.Container;import java.awt.Font;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;public class TimerDemo extends JFrame implements ActionListener { private static final long serialVersionUID = 201306211111L; private JTextField screen = new JTextField("0"); private JButton start = new JButton("开始"); private JButton reset = new JButton("重置"); private JPanel panel = new JPanel(); private boolean isRunning; private int time; private int timeBetween; public TimerDemo(int timeBetween) { super("计时器"); this.timeBetween = timeBetween; try { init(); } catch (Exception e) { e.printStackTrace(); } } public TimerDemo() { super("计时器"); this.timeBetween = 100; try { init(); } catch (Exception e) { e.printStackTrace(); } } private void init() { panel.setLayout(new GridLayout()); panel.add(start); panel.add(reset); start.addActionListener(this); reset.addActionListener(this); screen.setFont(new Font("幼圆", Font.BOLD, 60)); screen.setHorizontalAlignment(JTextField.CENTER); screen.setEditable(false); Container c = getContentPane(); c.setLayout(new BorderLayout()); c.add(panel, BorderLayout.SOUTH); c.add(screen, BorderLayout.CENTER); this.setSize(200, 150); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setResizable(false); this.setLocationRelativeTo(null); this.setVisible(true); } public static void main(String[] args) { new TimerDemo(1);// 设定 1ms/次 // new TimerDemo(); } @Override public void actionPerformed(ActionEvent e) { if (e.getSource() == start) { if (start.getText().equals("开始")) { start.setText("暂停"); isRunning = true; } else if (start.getText().equals("暂停")) { start.setText("开始"); isRunning = false; } } if (e.getSource() == reset) { start.setText("开始"); screen.setText("0"); isRunning = false; time = 0; } new Thread(new TimeZone()).start(); } class TimeZone implements Runnable { @Override public void run() { while (isRunning) { time++; if (time = Integer.MAX_VALUE) { screen.setText("ERROR"); JOptionPane.showMessageDialog(null, "ERROR"); isRunning = false; } screen.setText(String.valueOf(time)); try { Thread.sleep(timeBetween); } catch (Exception e) { e.printStackTrace(); } } } }}

java计时器秒表源代码

import java.awt.*;

public class Clock {

private int hour;

private int minute;

private int second;

public Clock(){

}

public Clock(int hrs,int min,int sec){

hour =hrs % 12;

minute = min;

second = sec;

}

void show (Graphics g,int cx,int cy,int rad){

int hourLenght = (int)(rad * 0.5);//时针的长度

int minuteLenght = (int)(rad * 0.6);//分针的长度

int secondLenght = (int)(rad * 0.9);//秒针的长度

double angle;//角度

//画出钟面

g.drawOval(cx-rad, cy - rad, rad * 2, rad * 2);

//画出时针

angle = (double)(hour*60*60 + minute*60 + second)/43200.0*2.0*Math.PI;

drawNiddle(g,Color.blue, cx, cy, hourLenght,angle);

//画分针

angle = (double)(minute*60 + second)/3600 * 2.0 * Math.PI;

drawNiddle(g,Color.blue, cx, cy, minuteLenght,angle);

// 画秒针

angle = (double)(second)/60*2.0*Math.PI;

drawNiddle(g,Color.blue, cx, cy, secondLenght,angle);

}

private void drawNiddle(Graphics g ,Color c,int x,int y,int len,double angle){

int ex = (int)(x + len * Math.sin(angle));

int ey = (int)(y - len * Math.cos(angle));

g.setColor(c);

g.drawLine(x,y,ex,ey);

}

}

----------------ClockTest1.java---------------------

import javax.swing.*;

import java.awt.*;

import java.util.*;

public class ClockTest1 extends JFrame{

/**

* @param args

*/

private Clock clock ;

private Date timeNow;

public ClockTest1(){

super("时钟");

setSize(400,400);

setVisible(true);

}

public void paint(Graphics g){

super.paint(g);

timeNow = new Date();

clock = new Clock(timeNow.getHours(),timeNow.getMinutes(),timeNow.getSeconds());

clock.show(g,170,150,100);

try{

//for(int i =0 ; i 10 ; i += 10)

Thread.sleep(1000);

}catch(InterruptedException e){

}

repaint();

}

public static void main(String[] args) {

// TODO 自动生成方法存根

ClockTest1 appication = new ClockTest1();

appication.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

做一个Java计时器?

您好,茫茫人海之中,能为君排忧解难实属朕的荣幸,在下拙见,若有错误,还望见谅!。展开全部

怎么还没人回答,看不过去了,用不用多线程根据你的程序需要,

import java.io.IOException;

import java.util.Timer;

public class TimerTest {

public static void main(String[] args){

Timer timer = new Timer();

timer.schedule(new MyTask(), 1000, 2000);//在1秒后执行此任务,每次间隔2秒,如果传递一个Data参数,就可以在某个固定的时间执行这个任务.

while(true){//这个是用来停止此任务的,否则就一直循环执行此任务了

try {

int ch = System.in.read();

if(ch-'c'==0){

timer.cancel();//使用这个方法退出任务

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

static class MyTask extends java.util.TimerTask{

@Override

public void run() {

//你要进行的操作

}

}

}

大概就是这样了,在根据你的业务需要查一下资料,就可以搞定了!非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!

关于计时器java代码和java计数器代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-21,除非注明,否则均为首码项目网原创文章,转载请注明出处。