首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

一个有关问题

2012-01-13 
一个问题importjava.awt.Toolkitimportjava.awt.event.ActionEventimportjava.awt.event.ActionListener

一个问题
import   java.awt.Toolkit;
import   java.awt.event.ActionEvent;
import   java.awt.event.ActionListener;
import   java.util.Date;


public   class   TimerTest
{
public   static   void   main(String[]   args)
{
javax.swing.Timer   mytimer=new   javax.swing.Timer(1000,new   ActionListener(){

public   void   actionPerformed(ActionEvent   e)
{
Date   now=new   Date();
System.out.println(now);
Toolkit.getDefaultToolkit().beep();
}

});
mytimer.start();
System.out.println( "   a ");
}
}


这个例子我直接运行不见打印时间,用调试能打印时间,但beep()好像没声

[解决办法]
因为mytimer还没起作用时main线程先结束了,也就没法执行代码了,在swing中frame不会结束,就没问题了
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;


public class TimerTest
{
public static void main(String[] args)
{
javax.swing.Timer mytimer=new javax.swing.Timer(1000,new ActionListener(){

public void actionPerformed(ActionEvent e)
{
Date now=new Date();
System.out.println(now);
Toolkit.getDefaultToolkit().beep();
}

});
mytimer.start();
try{(new Thread()).sleep(10000);}catch(Exception e){e.printStackTrace();}//坚持10秒钟
System.out.println( " a ");
}
}

热点排行