JProgressBar问题 用JProgressBar做一个进度条,然后用TimeTask写了一个每个一秒就更新JProgressBar的任务,但是JProgressBar不是1秒更新一次,怎么回事。求解 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 更新JProgressBar的代码要放到单独的线程里 我可以更新JProgressBar,但不是Timer.schedule()这个方法所设定的1秒更新一次,我看了下大概是5秒进度条才跳一次 使用多线程假设你的JProgressBar标量为progressBar..class X implements Runnable{ public X(){ //....你的其他代码 new Thread(this).start(); } //...你的其他方法 public void run(){ while(true){ long startTime = System.currentTimeMillis(); //关于JProgressBar的操作即:更新JProgressBar long endTime = System.currentTimeMillis(); if(endTime-startTime<1000){ try{ Thread.sleep(1000-(endTime-startTime)); }catch(Exception e){ } } } }}PS:代码为手动输入,格式问题请见谅。。 不好意思没看到要使用TimeTask...不过你也可以考虑不用TimeTask,而使用多线程。。 JProgressBar我使用了DefaultBoundedModel这个模型。sm.timer.schedule(new TimeSet(sm), 0, 1000);,这样我用了这个方法应该更用线程差不多,最后那个参数设置了1000毫秒运行TimeSet这个方法,而TimeSet我是继承了TimeTask,但是当程序运行时,进度条大概5秒才跳,不是我要的1秒跳一次,我想知道为什么,应该怎么改。 我已经发现JProgressBar更新的不是1秒的问题了,假如我没有改最大值就能1秒更新一次,改了最大值之后就不能1秒更新一次,请教高手该怎么办 java.awt 这个arrayList性能问题? 如何优化呢??? JTable 问题 求助 用java实现SYN端口扫描? 请教怎么用NetBeans打开一个工程源码 今天的面试题 只要是调用javax.servlet包就会包错不能编译生成.class文件. 将JTEXTAREA的内容保存为文本文件的问题 大哥,大姐,大虾们,小妹有个难题请好心的人帮忙!很急! 菜鸟提问,打印的问题 数组问题? 关于数组?
假设你的JProgressBar标量为progressBar..class X implements Runnable{
public X(){
//....你的其他代码
new Thread(this).start();
}
//...你的其他方法
public void run(){
while(true){
long startTime = System.currentTimeMillis();
//关于JProgressBar的操作即:更新JProgressBar
long endTime = System.currentTimeMillis();
if(endTime-startTime<1000){
try{
Thread.sleep(1000-(endTime-startTime));
}catch(Exception e){
}
}
}
}
}PS:代码为手动输入,格式问题请见谅。。
不过你也可以考虑不用TimeTask,而使用多线程。。