gpt4 book ai didi

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

转载 作者:搜寻专家 更新时间:2023-10-31 20:29:51 25 4
gpt4 key购买 nike

我对 Java 不太熟悉,并且无法使进度条正常工作。我正在使用 Netbeans 的内置 GUI 制作工具。目前,我的程序将目录中的图像读入图像数组。显然这需要一些时间,因此我想要一个简单的进度条来更新用户以了解加载的进度。我使用了其中一种拖放式进度条组件。

  • 我目前可以获取目录中的文件数并可以计算已加载文件的百分比
  • 文件成功加载到数组中,但进度条仅在所有文件加载完成后更新。我尝试在循环时重新验证和重新绘制,但这不起作用
  • 我尝试了 docs.oracle 上的各种教程,但似乎无法正常工作。
  • 我认为 SwingWorker 是我应该使用的类,这是正确的吗?

任何有关示例或建议的帮助将不胜感激!谢谢!

最佳答案

是的,您遇到了所有新 Swing 程序员的陷阱 - Event Dispatching Thread

基本上来说,Thread 是任何 Swing 系统的核心。负责向所有 UI 组件派发事件,并向重绘管理器发出更新 UI 的请求。

如果您在 EDT 中执行任何耗时的任务,您将阻止 UI 更新。

我建议您先通读 Worker Threads and SwingWorkerConcurrency in Swing而且,因为我知道你会问,请阅读这个答案,它有许多使用 SwingWorker 的例子,JTextArea appending problems

关于java - 如何在 Java 中使用进度条(Netbeans GUI),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12008565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com