比如这是一个八皇后的程序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显示问题的下一个解

展开

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

  1. java线程池拒绝策略_Java核心知识 多线程并发 线程池原理(二十三)

    线程池做的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在线程创建后 启动这些任务,如果线程数量超过了最大数量超出数量的线程排队等候,等其它线程执行完毕, 再从队列中取出任务来执行.他 ...

  2. 线程池参数详解_java中常见的六种线程池详解

    之前我们介绍了线程池的四种拒绝策略,了解了线程池参数的含义,那么今天我们来聊聊Java 中常见的几种线程池,以及在jdk7 加入的 ForkJoin 新型线程池 首先我们列出Java 中的六种线程池如 ...

  3. JAVA入门基础进阶(十四)—— 实现多线程、线程同步、生产者消费者

    文章目录 1.实现多线程 1.1简单了解多线程[理解] 1.2并发和并行[理解] 1.3进程和线程[理解] 1.4实现多线程方式一:继承Thread类[应用] 1.5实现多线程方式二:实现Runnab ...

  4. 图文上下切换代码_Java核心知识 多线程并发 线程上下文切换(二十一)

    巧妙地利用了时间片轮转的方式, CPU 给每个任务都服务一定的时间,然后把当前任务的状态保存 下来,在加载下一任务的状态后,继续服务下一任务,任务的状态保存及再加载, 这段过程就叫做 上下文切换.时间 ...

  5. 多线程-使线程具有有序性

    使线程具有有序性: 线程在运行时多个线程之间执行的时机是无序的,下面通过改造代码实现运行具有有序性: 1 /** 2 * 线程类 3 */ 4 public class MyThread extend ...

  6. java 监听鼠标点击_java 事件监听 - 鼠标

    java 事件监听 - 鼠标 //事件监听 //鼠标事件监听 //鼠标事件监听有两个实现接口 //1.MouseListener 普通的鼠标操作 //2.MouseMotionListener 鼠标的 ...

  7. java线程能做什么_java中的多线程能做什么 ?基本作用能说下吗?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 给你写个最简单的 多线程分同步和异步的,我已经给你写上了synchronized ,但注释了,你可以顺便看看加上它和去掉他的区别! public clas ...

  8. java搜索项目内的异常_java中用Lucene做搜索,在建索引时遇到的2个异常

    版本信息: jdk: 1.6 lucene: 3.2.0 情况是这样的,现在项目用lucene做搜索,我在服务器上跑了个后台线程用于建索引(每次最多从数据库中取出2w条),隔10分钟会跑一次,但是 隔 ...

  9. Java如何隐藏控制按键动画_Java动画短片当不移动鼠标光标时

    我有一个非常简单的动画,一个大字体的文字不断(逐个像素)移动到左边.首先将文本转换为图像,然后启动定时器任务,重复(每10-20 ms)将图像的x坐标递减1,并进行重绘(). 这个程序在某些系统上显示 ...

最新文章

  1. 解开一个困扰自己多时的小问题
  2. 运维基础--Linux用户和组的管理
  3. 网上书店例子(JSP和JavaBean)
  4. C# - 为引用类型重定义相等性 - 继承相关
  5. 80040e14 mysql_【ASP】提示错误80040e14
  6. 吴军《智能时代》序言汉译英练习
  7. java线程-synchronized实现可见性代码
  8. 《WF编程》系列之29 - 本地通信事件:HandleExternalEventActivity 活动生成器
  9. 骆天涯:gunicorn部署Flask服务
  10. MySQL设计说明书_数据库详细设计说明书-模板.doc
  11. CentOS NFS
  12. 美国人口普查年收入情况分析
  13. 2021年中国移动广告行业发展现状及趋势:发展趋势不断攀升,互动广告已逐渐成为主流[图]
  14. netca/dbca方框乱码的解决方法
  15. Perculia for Mac(苹果电脑蓝牙助手)
  16. Google Earth Engine(GEE)实例代码学习十一——影像全色波段融合提高分辨率(HSV Pan Sharpening)
  17. js相关面试题20道
  18. Vue入门 - 环境搭建Vue项目创建
  19. 【装机知识】CPU散热器知识整理
  20. asp手机拍照显示_WeX5V3.1手机拍照例子-后台ASP.NET

热门文章

  1. 千万数据却只用6步管理!这套数据治理架构如何100%复用?
  2. 17pk扎金花基于层次的技术
  3. 无论如何都是为了测试傻瓜搜索引擎
  4. 【飞秋】OpenExpressApp对建模支持的初步计划
  5. 飞鸽传书:浅谈 Scrum
  6. 用__asm写c函数[秋镇菜]
  7. html5 sqlite存储图片,HTML5之Sqlite
  8. code换取微信openid_JSamp;微信_微信授权
  9. 学习生信的系列教程 | 留言您是如何学习生信的免费获取北大出版《Python数据分析》书籍...
  10. fcpx插件:Chinese New Year Logo Reveal农历新年logo标志片头展示