我正在netbeans中进行混乱测验游戏,我需要一些帮助,我想从一个jPanel跳到另一个,并显示特定时间段的新jPanel,然后自动显示任何其他jPanel…我试图显示特定时间段的jPanel包含混乱的问题和他们的答案,以便一个人可以看到特定时间的面板…那么如何设置一个jPanel的显示时间??
您可以使用Timer和TimerTask类在特定的固定时间间隔执行特定的任务。它们是线程的类型。有关它们的更多信息,请参阅api。
http://docs.oracle.com/javase/7/docs/api/java/util/Timer.htmlhttp://docs.oracle.com/javase/7/docs/api/java/util/TimerTask.html
关于如何在您的情况下使用它们的大致想法,
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
//Hide the JPanel
}
});
}
}, 0, 5000);
上面的代码创建了计时器类的一个新对象。scheduleAtFixedRate()方法接受三个方法参数。- A TimerTask Object 初始延迟,即在多少毫秒后TimerTask应该启动。重复时间间隔,即在多少毫秒后TimerTask应该重复执行。
要使计时器执行多个任务,只需创建一个新的TimerTask对象,并在计时器上调用scheduleAtFixedRate()方法,指定新的TimerTask,以及它应该重复自己的时间。
任何数量的任务都可以通过使用单个Timer来调度运行。有关Timers和TimerTask的更多信息,请参阅javadoc API。