Java睡眠行为太早
在我想睡觉之前就开始睡觉 因此,我有一个带有事件鼠标单击的按钮,以m[0][0]显示数字,然后继续执行ifJava睡眠行为太早,java,swing,sleep,Java,Swing,Sleep,在我想睡觉之前就开始睡觉 因此,我有一个带有事件鼠标单击的按钮,以m[0][0]显示数字,然后继续执行if private void m00MouseClicked(java.awt.event.MouseEvent evt) { m00.setText(String.valueOf(m[0][0])); c=c+1; if(c==2){ ....... } 但我希望按钮显示数字m[0][0],然后等待几秒钟,然后继续执行if,我尝试了: private void m00Mouse
private void m00MouseClicked(java.awt.event.MouseEvent evt) {
m00.setText(String.valueOf(m[0][0]));
c=c+1;
if(c==2){
.......
}
但我希望按钮显示数字m[0][0],然后等待几秒钟,然后继续执行if,我尝试了:
private void m00MouseClicked(java.awt.event.MouseEvent evt) {
m00.setText(String.valueOf(m[0][0]));
c=c+1;
try {
Thread.sleep(2000);
} catch(InterruptedException ex) {
Thread.currentThread().interrupt();
}
if(c==2){
.......
}
但无论我在哪里放置“尝试睡眠”,它都会在显示数字并继续使用if之前等待2秒钟,我甚至在if中尝试了睡眠,但仍然没有按照我想要的方式工作。请帮帮我 不要从侦听器内部调用Thread.sleep()。代码将在事件分派线程上执行,这将导致GUI冻结
相反,您可以使用Swing计时器将事件安排在2秒内发生。有关详细信息,请阅读上的Swing教程部分。不要从侦听器内部调用Thread.sleep()。代码将在事件分派线程上执行,这将导致GUI冻结
相反,您可以使用Swing计时器将事件安排在2秒内发生。阅读Swing教程中的部分了解更多信息。对不起,我对java非常陌生,这似乎是我想要的,但我不太懂如何使用,如果你能给我一个例子,请??对不起,我对java非常陌生,这似乎是我想要的,但我不太懂如何使用,如果你能给我一个我的情况的例子,请??