2015-07-20 15 views
-1

如何创建一个弹出窗口/模态对话框?与一个不确定的进度运行时创建不确定的JProgressBar弹出/模态对话框

我甚不容管理创建isn't运行所有的时间在一个简单的窗口一个不确定的进度......

这就是最好的结果从来就走到这一步:

JProgressBar progressBar = new JProgressBar(); 
panel_3.add(progressBar); 
+3

https://docs.oracle.com/javase/tutorial/uiswing/components/progress.html –

+1

启动您的长时间运行的任务在一个新的线程,这样不这项工作?你也应该设置中间值为true。 –

+0

为了尽快提供更好的帮助,请发布[MCVE](http://stackoverflow.com/help/mcve)(最小完整可验证示例)或[SSCCE](http://www.sscce.org/)(Short,Self包含,正确示例)。除了@FastSnail的建议之外,看到进度条的常见问题是'阻止EDT'。它通常在SO上提及。 –

回答

0

对于这样一个模糊的问题,我只能给出一些指导方针作为答案。

JProgressBar有一个方法setIndeterminate(Boolean);,您可以使用。

您现在面临的进度条更大的问题是能够看到进度动画在进度条显示时进行的长时间运行必须在非gui线程中运行。我将不得不引用你阅读关于Concurrency in Swing

的模态对话框与进度都

  1. 的基本步骤创建一个JDialog
  2. 设置了模式(读的JDialog API)
  3. 给它一个Layout
  4. 插入进度为是或者在内部,例如JPanel,其具有合适的LayoutHere是你的选择。
  5. SwingWorker或别的东西