Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中使用进度条(Netbeans GUI)_Java_Netbeans_Progress Bar_Swingworker_Swingx - Fatal编程技术网

如何在Java中使用进度条(Netbeans GUI)

如何在Java中使用进度条(Netbeans GUI),java,netbeans,progress-bar,swingworker,swingx,Java,Netbeans,Progress Bar,Swingworker,Swingx,我对Java不是很有经验,而且我很难让进度条正常工作。我正在使用Netbeans的内置GUI生成器。当前,我的程序将图像从目录读入图像数组。显然这需要一点时间,因此我想要一个简单的进度条来更新用户,以了解加载的距离。我使用了其中一个拖放进度条组件 我目前可以得到一个目录中的文件数,并可以计算加载文件的百分比 文件已成功加载到阵列中,但只有在加载所有文件后才会更新进度栏。我在循环时尝试过重新验证和重新绘制,但这不起作用 我尝试了docs.oracle上的各种教程,但似乎没有任何效果 我相信Swi

我对Java不是很有经验,而且我很难让进度条正常工作。我正在使用Netbeans的内置GUI生成器。当前,我的程序将图像从目录读入图像数组。显然这需要一点时间,因此我想要一个简单的进度条来更新用户,以了解加载的距离。我使用了其中一个拖放进度条组件

  • 我目前可以得到一个目录中的文件数,并可以计算加载文件的百分比
  • 文件已成功加载到阵列中,但只有在加载所有文件后才会更新进度栏。我在循环时尝试过重新验证和重新绘制,但这不起作用
  • 我尝试了docs.oracle上的各种教程,但似乎没有任何效果
  • 我相信SwingWorker是我应该使用的类,对吗
如果您能提供任何示例或建议,我们将不胜感激!
谢谢

是的,您已经陷入了所有新的Swing编程人员的陷阱

基本上,这个
线程是任何Swing系统的核心。负责将事件分派到所有UI组件,并向重绘管理器发出更新UI的请求

如果在
EDT
中执行任何耗时的任务,将阻止用户界面被更新

我建议你先通读一遍,并且,因为我知道你会问,请阅读一下这个答案,它有许多使用
SwingWorker
的例子