进度条#

../../_images/progress-bar.png ../../_images/progress-bar-dark.png

进度条指示任务的进度。与 旋转指示器 不同,它们通常指示已完成的任务比例。

进度条最适合指示需要相对较长时间的任务的进度(作为经验法则,超过 30 秒的任务)。对于持续时间较短的任务,旋转指示器通常是更好的选择。

进度条#

进度条应指示完成任务的剩余时间。

理想情况下,剩余时间应准确计算。但是,如果无法做到,则可以估算剩余时间。在此情况下,可以通过让进度在 100% 时暂停并显示解释性文本(例如“即将完成”)来处理过估计的情况。可以通过根据需要提前进度来处理低估的情况。

如果无法估算剩余时间,则可以将进度条设置为活动模式,使其来回移动而不指示进度。应尽可能避免活动模式,尤其是在长时间内。

进度文本#

进度条应具有文本标签,描述已完成的任务量。对于较短的任务,可以使用适合任务的单位来表示。例如,“已旋转 13/19 张图像”或“已下载 12.1/30 MB”。

对于长时间运行的任务,显示剩余时间的估计值可能是有益的,可以单独显示,也可以与补充进度信息一起显示。如果剩余时间是估计值,请使用“大约”一词。例如,“大约还有 3 分钟”。

任务阶段#

某些任务可以由一系列阶段组成,每个阶段都有单独的时间估计。在这种情况下,尝试为整个任务创建一个单一的综合剩余时间计算。仅当对用户有意义时才沟通任务中的不同阶段。

在某些情况下,可以计算或估算任务一部分的剩余时间,但无法估算另一部分。在这种情况下,进度条可以进入活动模式,用于任务的一部分。但是,最好不要长时间显示活动模式,并且应将进度条模式更改次数保持在绝对最小值。

子任务#

某些任务由多个同时进行的子任务组成(例如同时下载多个文件)。在这里,通常建议显示一个进度条,指示所有任务的综合进度。

在极少数情况下,可能需要为每个单独的子任务显示一个进度条。但是,只有在真正对用户了解每个子任务的进度有用,或者可能需要暂停或停止子任务时才这样做。

细进度条#

../../_images/osd-progress-bar.png ../../_images/osd-progress-bar-dark.png

对于任务进度在后台发生且伴随文本不太重要的情况,可以使用细进度条。它们比常规进度条小,不显示伴随状态文本,并附加到标题栏的底部。

有关详细信息,请参阅 样式类文档

通用指南#

  • 如果某个操作可能具有破坏性或资源密集型,请考虑在进度条上添加暂停和/或取消按钮。

  • 在可能的情况下,应内联显示进度条,并且应与代表正在进行的任务的内容项或控件具有紧密的视觉关系。

  • 过去,进度窗口是呈现进度条的一种流行方式。这些辅助窗口会在任务持续期间出现,并包含一个或多个进度条。通常不建议使用进度窗口,因为关闭窗口的后果可能不明确,并且它们可能会遮挡有用的控件和内容。

API 参考#