关于计时器的问题,请教下

caicaixs 2008-03-09 10:32:04
在两个Frame间切换
我用了两个计时器进行切换。

第一次执行正常,两个Frame在计时器的时间结束后,可以进行切换
但是第二次执行,程序就停留在第一个Frame上,计时器不执行了

在调试状态下,我跟了下。当执行到timer.schedule(new XX(),100);
提示"处理异步线程队列时发生异常"


请问是什么问题?
...全文
111 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
caicaixs 2008-03-09
  • 打赏
  • 举报
回复
谢谢,问题解决了
caicaixs 2008-03-09
  • 打赏
  • 举报
回复
这是XX类的详细
public class XX extends TimerTask
{
public void run()
{
while(true)
{
//这里传了个值进来来管理状态
iIndex++;
switch (iIndex){
case 1:
this.repaint();
break;
case 2:
this.repaint();
break;
default:
break;
}
try
{
Thread.sleep(100);
}
catch(Exception e)
{
e.printStackTrace();
}
if(iIndex == 3)
break;
}
timer.cancel();
关闭当前Frame
进入下个Frame
}
}
}
网络咖啡 2008-03-09
  • 打赏
  • 举报
回复
计时器开启以后就一直执行了。

你可以在两个Frame切换的时候,把当前Frame的计时器关掉,timer.cancel()
本设计旨在构建一个基于数字电路的交通信号灯控制器,用于管理主干道与支干道交汇的十字路口。系统采用红、绿、黄三色信号灯,通过发光二极管显示通行状态,并利用传感器或逻辑开关检测车辆到来。主干道默认优先通行,支干道仅在有车到达时开放。主干道绿灯时,支干道红灯;支干道绿灯时,主干道红灯。主干道放行45秒,支干道放行25秒,绿灯转红灯时黄灯亮5秒过渡。系统采用VHDL语言设计,通过Multisim软件仿真验证。 设计分为两部分:秒脉冲信号发生装置和交通信号灯及时间显示装置。秒脉冲信号发生装置由定时器、计数器驱动脉冲电路和控制器组成。定时器产生特定脉冲,计数器根据脉冲计数,控制器根据计数结果控制信号灯切换。交通信号灯及数码管显示装置由译码器、LED灯和七段数码管组成。译码器将二进制代码转换为信号灯状态,LED灯显示通行状态,数码管通过译码器驱动显示45秒或25秒倒计时。 在Multisim软件中进行仿真时,可检验电路设计的正确性。若电路无法正常工作,需检查原理图和元件参数设置。若元件库中无所需元件,可寻找替代元件进行仿真验证。设计过程中,结合理论知识与实践,通过查阅资料、请教老师和分析问题来解决问题。本设计由两名同学分工完成,一人负责秒脉冲信号发生及控制部分,另一人负责交通信号灯及显示部分,最终整合成完整系统。尽管面临时间与能力挑战,但通过努力完成了设计目标。设计可能存在不足,欢迎批评指正。本设计旨在通过实践提升电子技术应用能力,理解数字电路在实际问题中的应用,并锻炼问题解决技巧。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧