【问题标题】:showing progress of a task while a button is executing in java在java中执行按钮时显示任务的进度
【发布时间】:2014-06-04 16:37:12
【问题描述】:

我在 java 中的一个按钮引发的函数中执行了几个 SQL 查询。我希望显示相同的状态,并且我正在使用 jProgressBar。但问题是它只会在按钮完成自身执行后才会更新,因此显示进度毫无意义。如何显示执行按钮的实际进度。

【问题讨论】:

  • 检查线程工作者,听起来你的程序现在只有一个线程在运行。另外,一些代码会很棒!
  • 是的.. 我意识到我错过了 n 个我不知道的线程.. 阅读了它们并通过 SwingWorker 成功实现了相同的..
  • 太棒了!很高兴听到它!

标签: java netbeans jprogressbar


【解决方案1】:

做一个这样的线程调度器

public class ThreadDispatcher implements Runnable { 

public ThreadDispatcher() {

}

public void run() {

        //call the method related to query here        

    }           


}  

当按下按钮时调用这个类,让这个类调用你的查询相关函数。

按下按钮时可能是这样的。

 Thread thread = new Thread(new ThreadDispatcher());
 thread.start();
 sleep(100);

赶上InterruptedException ex

Link for Thread example

【讨论】:

  • 我阅读了有关多线程的文章并遇到了 java SwingWorker.. 非常感谢!!
【解决方案2】:

您需要在后台线程上进行计算,而不是在主线程上。

看看Java SwingWorker Tutorial

【讨论】:

    猜你喜欢
    • 2020-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-20
    • 1970-01-01
    • 2010-09-13
    • 1970-01-01
    相关资源
    最近更新 更多