2013-02-19 57 views
1

爲什麼我的時鐘沒有顯示增加的秒數?我的時鐘沒有顯示第二次增加

public class timeTest extends javax.swing.JFrame { 

    public timeTest() { 
     initComponents(); 
     showTime(); 
    } 

    public static void main(String args[]) { 
     java.awt.EventQueue.invokeLater(new Runnable() { 
      public void run() { 
       new timeTest().setVisible(true); 
      } 
     }); 
    } 

    private javax.swing.JLabel timeLable; 

    private void showTime() { 
     Timer timer = new Timer(100, new ActionListener() { 
      @Override 
      public void actionPerformed(ActionEvent e) { 
       Calendar time = Calendar.getInstance(); 
       timeLable.setText(time.getTime().toString()); 
      } 
     }); 
     timer.setRepeats(false); 
     timer.start(); 
    } 
} 

我還沒有編寫代碼,它由IDE生成。

回答

2

更換

timer.setRepeats(false); 

timer.setRepeats(true); 

我只是添加日期格式化爲看起來很漂亮

public class timeTest extends javax.swing.JFrame { 

    SimpleDateFormat date_format = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss"); 

    public timeTest() { 
     initComponents(); 
     showTime(); 
    } 

    public static void main(String args[]) { 
     java.awt.EventQueue.invokeLater(new Runnable() { 
      public void run() { 
       new timeTest().setVisible(true); 
      } 
     }); 
    } 

    private javax.swing.JLabel timeLable; 

    private void showTime() { 
     Timer timer = new Timer(100, new ActionListener() { 
      @Override 
      public void actionPerformed(ActionEvent e) { 
       Calendar time = Calendar.getInstance(); 
       timeLable.setText(date_format.format(time.getTime())); 
      } 
     }); 
     timer.setRepeats(true); 
     timer.start(); 
    } 
} 
7

您的計時器不會重複。

timer.setRepeats(true); 

將它設置爲重複。

實際上你甚至不需要這個,它默認設置爲true。

相關問題