swingダイナミックタイム表示

1544 ワード

:)運転効果(もちろんダイナミック):
[img]http://dl.iteye.com/upload/attachment/195975/46c1fdc0-b6c8-3aa9-ade0-90ad986f7c71.jpg[img]
コード:

package test.gui;
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 GUITimer 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) {
GUITimer timeFrame = new GUITimer();
timeFrame.addComponent();
timeFrame.showTime();
}

}