JFrame의 현재 날짜와 시간을 JLabel로 표시하지만 자동으로 업데이트하는 방법을 찾고 있습니다. 창에 그려지면 수동으로 업데이트하는 것에 대해 걱정할 필요가 없습니다. 매 2 초마다 새로 고침하기 때문입니다.Java Swing에서 텍스트 변경 표시 방법 (즉, 초 표시 변경 시간 표시)
올바른 방법이 있습니까? JLabel의 텍스트 값을 2 초마다 수동으로 변경하는 대신
JFrame의 현재 날짜와 시간을 JLabel로 표시하지만 자동으로 업데이트하는 방법을 찾고 있습니다. 창에 그려지면 수동으로 업데이트하는 것에 대해 걱정할 필요가 없습니다. 매 2 초마다 새로 고침하기 때문입니다.Java Swing에서 텍스트 변경 표시 방법 (즉, 초 표시 변경 시간 표시)
올바른 방법이 있습니까? JLabel의 텍스트 값을 2 초마다 수동으로 변경하는 대신
javax.swing.Timer
을 사용하여 Swing 구성 요소에 대한 업데이트가 EDT에서 발생하는지 확인하십시오.
Timer t = new javax.swing.Timer(2000, new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){
yourLabel.setText(...);
}
});
t.start();
스윙 Timer을 사용하십시오. the tutorial은 설명하기 때문에 작업에 필요한 도구입니다.
에 SwingUtilities.invokeLater()
또는 SwingUtilities.invokeAndWait()
을 삽입하는 것만 사용할 수 있습니다.
감사합니다 – n0pe
내가 필요 정확히 무엇인지, 감사 – n0pe
및 타이머 http://www.java2s.com/Code/Java/Swing-JFC/Anappletthatcountsdownfromaspecifiedtime.htm에 대한 몇 가지 예제와 함께 튜토리얼에 대한 링크에 대한 – mKorbel