Thứ Bảy, 9 tháng 4, 2011

Dùng Timer trong Java

Dùng Swing Timer(javax.swing.Timer)

package demo;


import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Timer;
import javax.swing.JFrame;


public class TimerDemo extends JFrame implements ActionListener{
Timer timer;

public TimerDemo()
{
super("Timer demo");
setSize(100, 100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);


timer = new Timer(1000, this);
timer.start();
}
@Override
public void actionPerformed(ActionEvent arg0) {
// Add code here to execute periodically
System.out.println("Repeated.");
}
public static void main(String[] args)
{
new TimerDemo();
}
}


Dùng Utility timer(java.util.Timer)

package demo;


import java.util.Timer;
import java.util.TimerTask;
import javax.swing.JFrame;


public class TimerDemo extends JFrame {
Timer timer;

public TimerDemo()
{
super("Timer demo");
setSize(100, 100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);


timer = new Timer();
timer.scheduleAtFixedRate(new Task(), 0, 1000);
}
class Task extends TimerTask
{


@Override
public void run() {
// Add code here to execute periodically
System.out.println("Repeated.");
}

}
public static void main(String[] args)
{
new TimerDemo();
}
}

3 nhận xét:

  1. UH, Thanks nhiều bạn nhé, hàm này hay đấy, dùng đc cho 1 task trong hệ thống chạy liên tục

    Trả lờiXóa
  2. Làm sao để tạo một button khi nhấn vào nó thì time set lại ban đầu nhỉ.
    Ví dụ: cho thời gian chạy 10s. đếm ngược tới 5 nhấn button và nó set lại bằng 10 và lại đếm ngược?

    Trả lờiXóa
  3. ek bạn chọn 1 biến để tính số lần bạn cần tính cà khi đến giá trị b cần reset hì chỉ cần reset biến là dk

    Trả lờiXóa