反复更新jLabel

时间:2016-01-29 16:00:24

标签: java swing

我有一个应用程序,它读取100个输入文件并生成一个CSV。我希望显示在jLabel中读取的当前文件。怎么做到这一点?

我只为用户提供了一个上传按钮。用户将使用绝对路径上传所有文件名。应用程序读取所有文件并生成csv。

1 个答案:

答案 0 :(得分:3)

您可能希望使用SwingWorker来读取所有文件。然后在SwingWorker中,您将publish当前正在读取的文件的名称。然后在process(...)的{​​{1}}方法中,使用已发布的值更新标签。

阅读Tasks That Have Interim Results上的Swing教程中的部分,了解更多信息以及SwingWorker的工作示例。

另一个选项是创建一个单独的线程来读取文件,然后在那个线程中,只要你想更新标签就调用SwingWorker。这基本上就是SwingWorker在正式API中为您所做的事情。