如何在Java中使用进度条(Netbeans GUI)
我对Java不是很有经验,而且我很难让进度条正常工作。我正在使用Netbeans的内置GUI生成器。当前,我的程序将图像从目录读入图像数组。显然这需要一点时间,因此我想要一个简单的进度条来更新用户,以了解加载的距离。我使用了其中一个拖放进度条组件如何在Java中使用进度条(Netbeans GUI),java,netbeans,progress-bar,swingworker,swingx,Java,Netbeans,Progress Bar,Swingworker,Swingx,我对Java不是很有经验,而且我很难让进度条正常工作。我正在使用Netbeans的内置GUI生成器。当前,我的程序将图像从目录读入图像数组。显然这需要一点时间,因此我想要一个简单的进度条来更新用户,以了解加载的距离。我使用了其中一个拖放进度条组件 我目前可以得到一个目录中的文件数,并可以计算加载文件的百分比 文件已成功加载到阵列中,但只有在加载所有文件后才会更新进度栏。我在循环时尝试过重新验证和重新绘制,但这不起作用 我尝试了docs.oracle上的各种教程,但似乎没有任何效果 我相信Swi
- 我目前可以得到一个目录中的文件数,并可以计算加载文件的百分比
- 文件已成功加载到阵列中,但只有在加载所有文件后才会更新进度栏。我在循环时尝试过重新验证和重新绘制,但这不起作用
- 我尝试了docs.oracle上的各种教程,但似乎没有任何效果
- 我相信SwingWorker是我应该使用的类,对吗
谢谢 是的,您已经陷入了所有新的Swing编程人员的陷阱 基本上,这个
线程是任何Swing系统的核心。负责将事件分派到所有UI组件,并向重绘管理器发出更新UI的请求
如果在EDT
中执行任何耗时的任务,将阻止用户界面被更新
我建议你先通读一遍,并且,因为我知道你会问,请阅读一下这个答案,它有许多使用SwingWorker
的例子