Ich habe eine TimerTask geschrieben, um das aktuelle Datum und die aktuelle Uhrzeit in einem JLabel anzuzeigen. Es folgt der TimerTask-Code, der im normalen Szenario gut funktioniert. Wenn ich Systemdatum und -zeit bei laufender GUI ändere, wird der Timer nicht mehr ausgeführt. Es gab keine Ausnahme, als ich Systemdatum und -zeit änderte und der Timer hörte gerade auf zu laufen. Kann mir jemand sagen, was passiert?TimerTask, das Systemdatum und -uhrzeit erhält, wird nicht mehr ausgeführt, wenn das Systemdatum geändert wird
private void startTimer()
{
// Start the clock
timer = new Timer();
timer.schedule(new TimeTask(), 0, 1000);
}
class TimeTask extends TimerTask
{
public void run()
{
try {
clockLabel.setText(new SimpleDateFormat("EEE , dd MMM , HH:mm:ss").format(Calendar.getInstance().getTime()));
System.out.println(clockLabel.getText());
} catch(Exception ex) {
ex.printStackTrace();
System.out.println("Exception : " + ex.getMessage());
}
}
}