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显示问题的下一个解
展开
java线程等待按钮点击_java如何用多线程使线程在sleep时等待按钮按下?相关推荐
- java线程池拒绝策略_Java核心知识 多线程并发 线程池原理(二十三)
线程池做的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在线程创建后 启动这些任务,如果线程数量超过了最大数量超出数量的线程排队等候,等其它线程执行完毕, 再从队列中取出任务来执行.他 ...
- 线程池参数详解_java中常见的六种线程池详解
之前我们介绍了线程池的四种拒绝策略,了解了线程池参数的含义,那么今天我们来聊聊Java 中常见的几种线程池,以及在jdk7 加入的 ForkJoin 新型线程池 首先我们列出Java 中的六种线程池如 ...
- JAVA入门基础进阶(十四)—— 实现多线程、线程同步、生产者消费者
文章目录 1.实现多线程 1.1简单了解多线程[理解] 1.2并发和并行[理解] 1.3进程和线程[理解] 1.4实现多线程方式一:继承Thread类[应用] 1.5实现多线程方式二:实现Runnab ...
- 图文上下切换代码_Java核心知识 多线程并发 线程上下文切换(二十一)
巧妙地利用了时间片轮转的方式, CPU 给每个任务都服务一定的时间,然后把当前任务的状态保存 下来,在加载下一任务的状态后,继续服务下一任务,任务的状态保存及再加载, 这段过程就叫做 上下文切换.时间 ...
- 多线程-使线程具有有序性
使线程具有有序性: 线程在运行时多个线程之间执行的时机是无序的,下面通过改造代码实现运行具有有序性: 1 /** 2 * 线程类 3 */ 4 public class MyThread extend ...
- java 监听鼠标点击_java 事件监听 - 鼠标
java 事件监听 - 鼠标 //事件监听 //鼠标事件监听 //鼠标事件监听有两个实现接口 //1.MouseListener 普通的鼠标操作 //2.MouseMotionListener 鼠标的 ...
- java线程能做什么_java中的多线程能做什么 ?基本作用能说下吗?
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 给你写个最简单的 多线程分同步和异步的,我已经给你写上了synchronized ,但注释了,你可以顺便看看加上它和去掉他的区别! public clas ...
- java搜索项目内的异常_java中用Lucene做搜索,在建索引时遇到的2个异常
版本信息: jdk: 1.6 lucene: 3.2.0 情况是这样的,现在项目用lucene做搜索,我在服务器上跑了个后台线程用于建索引(每次最多从数据库中取出2w条),隔10分钟会跑一次,但是 隔 ...
- Java如何隐藏控制按键动画_Java动画短片当不移动鼠标光标时
我有一个非常简单的动画,一个大字体的文字不断(逐个像素)移动到左边.首先将文本转换为图像,然后启动定时器任务,重复(每10-20 ms)将图像的x坐标递减1,并进行重绘(). 这个程序在某些系统上显示 ...
最新文章
- 解开一个困扰自己多时的小问题
- 运维基础--Linux用户和组的管理
- 网上书店例子(JSP和JavaBean)
- C# - 为引用类型重定义相等性 - 继承相关
- 80040e14 mysql_【ASP】提示错误80040e14
- 吴军《智能时代》序言汉译英练习
- java线程-synchronized实现可见性代码
- 《WF编程》系列之29 - 本地通信事件:HandleExternalEventActivity 活动生成器
- 骆天涯:gunicorn部署Flask服务
- MySQL设计说明书_数据库详细设计说明书-模板.doc
- CentOS NFS
- 美国人口普查年收入情况分析
- 2021年中国移动广告行业发展现状及趋势:发展趋势不断攀升,互动广告已逐渐成为主流[图]
- netca/dbca方框乱码的解决方法
- Perculia for Mac(苹果电脑蓝牙助手)
- Google Earth Engine(GEE)实例代码学习十一——影像全色波段融合提高分辨率(HSV Pan Sharpening)
- js相关面试题20道
- Vue入门 - 环境搭建Vue项目创建
- 【装机知识】CPU散热器知识整理
- asp手机拍照显示_WeX5V3.1手机拍照例子-后台ASP.NET
热门文章
- 千万数据却只用6步管理!这套数据治理架构如何100%复用?
- 17pk扎金花基于层次的技术
- 无论如何都是为了测试傻瓜搜索引擎
- 【飞秋】OpenExpressApp对建模支持的初步计划
- 飞鸽传书:浅谈 Scrum
- 用__asm写c函数[秋镇菜]
- html5 sqlite存储图片,HTML5之Sqlite
- code换取微信openid_JSamp;微信_微信授权
- 学习生信的系列教程 | 留言您是如何学习生信的免费获取北大出版《Python数据分析》书籍...
- fcpx插件:Chinese New Year Logo Reveal农历新年logo标志片头展示