在线程里repaint Frame。

解决方案 »

  1.   

    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import java.util.Date;
    import java.awt.Toolkit;
    import java.awt.Dimension;/**
     * <p>Title: DateFrame</p>
     *
     * <p>Description: </p>
     *
     * <p>Copyright: Copyright (c) 2004</p>
     *
     * <p>Company: </p>
     *
     * @author not attributable
     * @version 1.0
     */public class DateFrame extends JFrame 
    {
            static JLabel aLabel;
            static String date;        public DateFrame()
            {
                    aLabel = new JLabel(new Date().toString());
                    this.getContentPane().add(aLabel);
                    setSize(300, 200);
                    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
                    setLocation((int) (d.getWidth() - this.getWidth()) / 2,
                                (int) (d.getHeight() - this.getHeight()) / 2);
                    setVisible(true);
                    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            }                public static void main(String[] args)
            {
                    final DateFrame dateFrame = new DateFrame();                             
             
                    new Thread()
                    {
                     public void run()
                        {
                         while(true)
                          {
                          try
                            {
                             Thread.currentThread().sleep(100);
                            }
                            catch (InterruptedException ex)
                            {}
                            
                                date = new Date().toString();
                                dateFrame.aLabel.setText(date);
                            }
                        }
                    }.start();       
            }}
    随便写写的,见笑!