我有一个来自here的Vaadin DragAndDropEvent,但是进度指示器有些奇怪

@Override
public boolean listenProgress() {return true;}

@Override
public void onProgress(final StreamingProgressEvent event) {
  Notification.show("De upload is bezig", Notification.Type.WARNING_MESSAGE);
}


有人可以解释一下我需要在哪里放置通知,以便在上传进行时(而不是在上传完成时)显示通知吗?

最佳答案

TLDR:将UI.getCurrent().setPollInterval(10)放在您的progress = new ProgressIndicator();之前
行或启用推模式。

有2个解决方案。您可以坚持使用示例中使用的ProgressIndicator,也可以将全新的ProgressBar与Push Mode一起使用。


用于ProgressIndicator的Javadoc指出:



  @已弃用
  
  不推荐使用。从7.1开始,请结合使用ProgressBar和
  改用UI.setPushMode(PushMode)或UI.setPollInterval(int)。


您的代码不起作用,因为您的轮询间隔比传输文件所需的时间长(或完全禁用)。


其次,类似的方法是使用JavaDoc中建议的ProgressBar。但是,您仍然需要确保设置了PushMode或PollInterval。

10-06 16:20