0

我有一个用文件名填充表格的应用程序。我想向用户显示在循环中找到的文件数量,以便有一个持续的进度报告。

DirectoryStream<Path> stream = Files.newDirectoryStream( Paths.get( sourcePath ));

for (Path sourceFile : stream)
{
    file = sourceFile.toFile();

    if (file.isFile())
    {
         filename = file.getName();

         sorted.put( filename , filename );

         fileCount++;

         if (fileCount % 100 == 0)
         {
             ivLabelFileCount.setText( "Found: " + fileCount ) );
             ivLabelFileCount.update();
         }
    } 
}

当它运行时,我得到的文件计数显示为 100、200、300 等。但是文件计数显示在大约 1,100 处停止。过了一会儿,我得到了 2,831 的最终计数。因此,即使循环仍在执行,数百个计数的显示也会在大约 1,100 处停止。

如果完成,如何让标签显示直到循环?就好像 SWT 停止更新显示,即使我正在更改标签文本。几乎跟不上文字的变化。

4

0 回答 0