我对这个程序的问题是,首先我希望标签显示系统日期,等待5秒然后显示" hi"但是在运行代码时,标签只显示" hi"。请帮我找错。
import java.util.*;
import javax.swing.*;
class DigClock
{
public static void main(String a[])
{
try
{
JFrame f= new JFrame();
JPanel p=new JPanel();
JLabel l=new JLabel((new Date()).toString());
p.add(l);
f.add(p);
Thread.sleep(5000);
l.setText("hi");
f.setVisible(true);
f.setExtendedState(JFrame.MAXIMIZED_BOTH);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
catch(Exception e)
{}
}
}
答案 0 :(得分:0)
一个简单的错误......你写了
thread.sleep
在表单可见性之前,在该休眠时间,您的页面可见性为false,您无法看到该页面。这意味着您可以在5秒后打开页面。五秒钟后标签已经更改。
复制此代码
public class DigClock {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
try
{
JFrame f= new JFrame();
JPanel p=new JPanel();
JLabel l=new JLabel((new Date()).toString());
p.add(l);
f.add(p);
f.setVisible(true);
f.setExtendedState(JFrame.MAXIMIZED_BOTH);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Thread.sleep(5000);
l.setText("hi");
}
catch(Exception e)
{}
}
}
Regds ..