好的所以我正在制作一个叫做游戏的游戏" Connect Four"。我正在尝试做的是这样的。所以,一旦你按下了名为" Human vs Computer"它应该说"你的游戏开始于" " 3" (现在它应该等待一秒然后它应该打印)" 2" (现在它应该等待一秒然后它应该打印)" 1"。
但是当我这样做的时候......它会冻结人类和电脑按钮"我不知道为什么会这样做。所以你能告诉我如何解决这个问题。这是我到目前为止所尝试的。
private class humanVsComputerButtonListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
if (event.getSource() == humanVsCom) {
lblWelcome.setVisible(true);
playButton.setVisible(false);
ruleButton.setVisible(true);
quitButton.setVisible(true);
humanVsCom.setVisible(false);
multiplayer.setVisible(false);
withTimeLimit.setVisible(false);
noTimeLimit.setVisible(false);
ruleButton.setVisible(false);
quitButton.setVisible(false);
goBack.setVisible(false);
lblGameStarts.setVisible(true);
try {
Thread.sleep(5000);
}catch (Exception e) {
}
lblGameStarts.setVisible(false);
lblinThree.setVisible(true);
try {
Thread.sleep(5000);
}catch (Exception e) {
}
lblinThree.setVisible(false);
lblinTwo.setVisible(true);
try {
Thread.sleep(5000);
}catch (Exception e) {
}
lblinTwo.setVisible(false);
lblinOne.setVisible(true);
try {
Thread.sleep(5000);
}catch (Exception e) {
}
lblinOne.setVisible(false);
}
}
}
}
经过一些秒后,它会在一行中打印所有内容。
请帮我解决这个问题。谢谢。
答案 0 :(得分:1)
整个程序运行一个线程(除非你创建或程序创建任何线程)。因此,要在自己的线程上单独运行某些内容,请执行以下操作:
read_files = open(lines)
在run()方法中,您可以放置要执行的内容。