Java课程设计 201521123078

本文介绍了一个基于Java的图形用户界面(GUI)计时器应用的实现方法,重点讲解了如何利用多线程技术来处理计时任务。文章详细解释了通过实现Runnable接口创建计时线程的过程,并探讨了不同按钮的功能实现,如开始(begin)、停止(stop)、继续(contiue)等操作背后的逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

计时器

掌握java图形界面操作以及多线程技术。

1.Mythread1

写一个类Mythread1实现Runnable,当需要开一个线程时就是用这个类。其中的run()通过标记flag和循环实现时间的改变。

2.按钮

2.1begin

在操作按钮添加事件监听器,begin按钮中实现的是重头开始计时,但是开始时出现连按begin出现多个线程并行,由于Thread.wait();Thread.inturrupt();Thread.notify();等线程操作在学习了很久后还是无法准确运用到其中,就用了标记的方法;
mythread1.flag=false;
mythread1=new Mythread1(x,pastsecond,remainsecond,time);
p=new Thread(mythread1);
p.start();
第一次begin普通开始,接下来通过标记方法,使得前一个线程中断(mythread1.flag=false;),开始一个新的线程。之所以分第一次和之后是因为第一次未新建前mythread是null;在输入框中还需捕获输入异常,提示error;,捕获到就不开始新线程并中断旧线程。

2.2stop

直接通过标记mythread1.flag=false停止run();

2.3contiue

因为唤醒旧线程暂时无法有效达到目的,所以新建线程p=new Thread(mythread1);其中mythread1是当前的,改变flag;开始线程即可实现继续计时,需要注意:不能连按contiue,因为它并没有像begin改变mythread1,之前只是通过stop中断了旧的线程,意味着旧线程还在,连按就会出现多个线程并行的错误。在这里使用了使按钮失效的方法,即只有按下stop时,contiue按钮才会变亮。

2.4hide and show

改变字体颜色

2.5exit

System.exit(0);
1109904-20170622133635835-1179194812.png
1109904-20170620203612710-2134589788.png
计时器

转载于:https://www.cnblogs.com/onetruck/p/7056204.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值