repaint()
WXPQD 2004-03-31 11:36:01 为什么我的JLabel的标题不会变,一直是 "1"
public class MainFrame extends JFrame implements Runnable
{
boolean flag;
int count;
MainFrame()
{
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.getContentPane().setLayout(new BorderLayout());
this.getContentPane().add(new JLabel("1"));
this.setSize(100,100);
this.setVisible(true);
Thread t1=new Thread(this);
t1.start();
}
public void refresh()
{
this.getContentPane().add("label"+count++);
flag=false;
}
public void run()
{
while (true)
{
try
{
Thread.sleep(100);
}
catch (Exception e)
{
e.printStackTrace();
}
if (Manager.getFlag())
{
this.refresh();
}
}
}
}
class Manager extends Thread
{
boolean flag=false;
Manager(){start();}
public static boolean getFlag()
{
return flag;
}
public void run()
{
try
{
Thread.sleep(1200);
}
catch (Exception e)
{
e.printStackTrace();
}
flag=true;
}
}