900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > java线程等待按钮点击_java如何用多线程使线程在sleep时等待按钮按下?

java线程等待按钮点击_java如何用多线程使线程在sleep时等待按钮按下?

时间:2021-01-28 07:51:25

相关推荐

java线程等待按钮点击_java如何用多线程使线程在sleep时等待按钮按下?

比如这是一个八皇后的程序packagecom.equeen;importjava.applet.Applet;importjava.awt.Button;importjava.awt.Color;importjava.awt.Event;importjava.awt.Graphics;publicclassQuee...

比如这是一个八皇后的程序package com.equeen;

import java.applet.Applet;

import java.awt.Button;

import java.awt.Color;

import java.awt.Event;

import java.awt.Graphics;

public class Queen extends Applet{

/**

*

*/

private static final long serialVersionUID = 1L;

int num;

int n;

Button b1 = new Button("next");

int cross(int k,int l[])

{

int j;

if(k==1) return 0;

for(j=1;j<=k-1;j++){

if(l[j]==l[k]||(j-k==l[j]-l[k])||(k-j==l[j]-l[k])) return 1;

}

return 0;

}

public void init(){

this.resize(400, 400);

add(b1);

}

public boolean action(Event e, Object o1) {

if(e.target==b1) try{Thread.interrupted();}catch(Exception c){}

return true;

}

public void fill(int k,int l[],Graphics g)

{ int i;

if(k<=n)

for(l[k]=1;l[k]<=n;l[k]++){

if(cross(k,l)==0) fill(k+1,l,g);

}

else {

num++;

g.setColor(new Color(0,0,0));

for(i=1;i<=9;i++){

g.drawLine(40, i*40, 360, i*40);

g.drawLine(i*40, 40, i*40, 360);

}

for(i=1;i<=8;i++) g.fillRect(l[i]*40, i*40, 40, 40);

try{Thread.sleep(2000);}catch(Exception e){

}

g.clearRect(40, 40, 360, 360);

}

}

public void paint(Graphics g) {

int l[]=new int[15];

Queen q=new Queen();

q.num=0;

q.n=8;

q.fill(1,l,g);

System.out.println(q.num);

}

怎么修改代码使得通过按下"NEXT' 按钮让APPLET显示问题的下一个解

展开

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。