如何在java游戏中计时?
我有一个游戏,它包括随着游戏进行的计时,我的意思是你在玩游戏,时间在你玩的时候滴答作响,当它完成时,它会停止游戏。但是我不能同时运行两个线程的代码。。。我有办法解决这个问题吗 这是我的计时器代码:如何在java游戏中计时?,java,swing,delay,Java,Swing,Delay,我有一个游戏,它包括随着游戏进行的计时,我的意思是你在玩游戏,时间在你玩的时候滴答作响,当它完成时,它会停止游戏。但是我不能同时运行两个线程的代码。。。我有办法解决这个问题吗 这是我的计时器代码: public class Time { private static String gl; private static int gli; public static int weeks = 0; public static void main(String[] args) throws Inter
public class Time {
private static String gl;
private static int gli;
public static int weeks = 0;
public static void main(String[] args) throws InterruptedException {
startdays();
}
public static void startdays() throws InterruptedException {
gl = JOptionPane.showInputDialog("How many weeks? do you want the game to to on for?\nPlease type numbers, Or game will crash.\nEach week is 10 seconds long.");
gli = Integer.parseInt(gl);
gli++;
for (int i = 0; i < gli; i++) {
if(weeks < gli){
Thread.sleep(10000);
weeks++;
}else if(weeks == gli){
JOptionPane.showMessageDialog(null, "Uh oh, Your time in office is up. You died of an infectuous disease.");
}
}
}
}
那么,有没有办法让计时器和游戏同时运行呢?如果您正在运行Swing,那么您已经在运行多个线程,因为Swing在它自己的线程中运行 首先看一看 特别是,
javax.swing.Timer
很可能是您最有用的选项
已更新
可能的例子
JOptionPane.showMessageDialog(frame, compname);
Time time = new Time();
time.startdays();
JOptionPane.showMessageDialog(frame, "Im still here");