import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
public class TimerTest extends JPanel implements ActionListener
{
Calendar calendar1 = Calendar.getInstance();
int hour = calendar1.get(Calendar.HOUR_OF_DAY);
int min = calendar1.get(Calendar.MINUTE);
int sec = calendar1.get(Calendar.SECOND);
javax.swing.Timer timer;
JLabel lbPresent;
public TimerTest()
{
timer = new javax.swing.Timer(1000, this);
timer.setInitialDelay(0);
timer.start();
lbPresent = new JLabel("현재 : " + hour + "시" + min + "분 " + sec + "초",
Label.RIGHT);
add(lbPresent);
}
public void actionPerformed(ActionEvent e)
{
++sec;
Calendar calendar2 = Calendar.getInstance();
hour = calendar2.get(Calendar.HOUR_OF_DAY);
min = calendar2.get(Calendar.MINUTE);
sec = calendar2.get(Calendar.SECOND);
lbPresent.setText("현재 : " + hour + "시" + min + "분 " + sec + "초");
}
private static void createAndShowGUI()
{
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame("TimerTest");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
TimerTest timerTest = new TimerTest();
timerTest.setOpaque(true);
frame.setContentPane(timerTest);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args)
{
javax.swing.SwingUtilities.invokeLater(new Runnable()
{public void run(){createAndShowGUI();}});
}
}
/*
현재 시간을 알려주는 시계입니다. Timer클래스는 1초마다 이벤트를 일으켜서 알려줍니다.
actionPerformed에서 시간을 보여줍니다. 앞써 했었던 시간이 증가/감소하는 예제와 이 예제를
응용하면 스탑워치'를 만들 수 있습니다.
*/
'IT_Programming > Java' 카테고리의 다른 글
배열의 초기화 사용법 차이 arr = {1,2,3,4,5}와 arr = new int[]{1,2,3,4,5}의 차이 (0) | 2007.02.09 |
---|---|
Calendar클래스(GregorianCalendar)를 이용한 달력 출력하기 (0) | 2007.02.06 |
시간이 증가하는 Timer (0) | 2007.02.06 |
시간이 감소하는 타이머 (0) | 2007.02.06 |
달팽이 배열 (0) | 2007.02.06 |