我正在使用JFrame显示图像,所编写的代码是使JFrame窗口在5秒后关闭并再次打开终端窗口。(你知道,System.out。Println (" blahblahblah ");)下面是我的代码:
public static void closeCall()
{
Long exitTime = Calendar.getInstance().getTime().getTime() + 5 * 1000;
for(int i=1; i>0; i++)
{
Long currentTime = Calendar.getInstance().getTime().getTime();
if (currentTime >= exitTime)
{
JFrame1.dispatchEvent(new WindowEvent(JFrame1, WindowEvent.WINDOW_CLOSING));
break;
}
}
}
我用的是BlueJ 3.1.5和JDK 8u40,还在用试错的方式学习东西,所以,嗯,帮助吗?
提前感谢。
我对BlueJ终端窗口一无所知,但是如果你想在一定时间间隔后执行一个动作,那么你应该使用Swing Timer
而不是创建一个循环,这会占用CPU并使帧无响应。
Timer将在5秒后触发一个事件,然后你关闭帧。请阅读Swing教程中关于如何使用Swing计时器的部分,了解更多信息和示例。