我正在使用Netbeans制作Java桌面应用程序。我是桌面应用程序的新手,并且对Java ether并不是很好。

我有一个JLabel,其计数值需要一两分钟来计算。该值是计算机上的文件总数。

我有一个Master类,该类具有一种用于文件计数的方法,另一种方法是将JFrame设置为可见并将计数值传递给JFrame类,然后将其分配给JLabel。

这就是我要的:


立即将JFrame设置为可见,而无需等待计数计算。
显示到目前为止的计数值,并每秒更新一次,直到完成计数计算为止。


我将使用什么代码执行此操作?

最佳答案

label.setText();


阅读Concurrency上Swing教程中的部分。您可以使用SwingWorker在后台执行长时间运行的任务。然后,您定期发布值,并使用setText()方法更新GUI。

08-04 00:15