「java时间窗口计数」java时间显示

博主:adminadmin 2023-03-19 07:14:05 503

本篇文章给大家谈谈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窗口显示当前时间

用 java的 swing做个图形界面 然后显示当前的时间:

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.text.SimpleDateFormat;

import java.util.Date;

import javax.swing.JTextField;

import javax.swing.Timer;

import javax.swing.JFrame;

public class NowTime extends JFrame

{

//添加 显示时间的JTextField

private void addComponent(){

JTextField time = new JTextField();

this.getContentPane().add(time);

this.setTimer(time);

}

//显示窗口

private void showTime(){

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//this.pack();//自动适应窗口大小

this.setSize(160, 80);

this.setVisible(true);

}

//设置Timer 1000ms实现一次动作 实际是一个线程

private void setTimer(JTextField time){

final JTextField varTime = time;

Timer timeAction = new Timer(1000, new ActionListener() {

public void actionPerformed(ActionEvent e) {

long timemillis = System.currentTimeMillis();

//转换日期显示格式

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

varTime.setText(df.format(new Date(timemillis)));

}

});

timeAction.start();

}

//运行方法

public static void main(String[] args) {

NowTime timeFrame = new NowTime();

timeFrame.addComponent();

timeFrame.showTime();

}

}

请问用java怎样用窗口做一个90秒倒计时?

import javax.swing.*;

import java.awt.event.*;

import java.awt.*;

public class Test extends JFrame

{

private JButton btn = new JButton("Start");

private JLabel label = new JLabel();

private int time = 90;

Test() {

setSize(500,300);

setLayout(new FlowLayout());

add(btn);

add(label);

btn.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

new Thread(new MyThread()).start();

}

});

setVisible(true);

}

class MyThread implements Runnable

{

public void run() {

while (time 0)

{

time--;

label.setText(time + "");

try

{

Thread.sleep(1000);

}

catch (Exception e)

{

e.printStackTrace();

}

}

Test.this.dispose();

}

};

public static void main(String[] args)

{

new Test();

}

}

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