此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Shell 3.4.0! |
进度视图
ProgressView 是一个基本实现,提供绘制进度信息的功能。ProgressView 继承自 BoxView。
ProgressView 使用下述概念绘制其内容:
-
ProgressState 包含有关运行时状态的各种信息
-
tickStart: 刻度值的下限
-
tickEnd: tick 值的上限
-
tickValue: 当前 tick 值
-
running:正在运行状态,true 或 false
-
startTime:进度开始时的开始时间(以毫秒为单位)
-
updateTime:进度更新的最后已知时间(以毫秒为单位)
-
-
ProgressContext 是与 ProgressViewItem 一起使用的上下文
-
description:对进度的描述
-
state:ProgressState
-
view:拥有的 ProgressView
-
spinner:用于 ProgressView 的 Spinner 表示
-
有助于项目绘制的其他方法
-
-
ProgressViewItem:是 ProgressView 中使用的单元格的表示形式
内置项目很少,即text
,spinner
和percent
.
默认 ProgressView 为您提供text
,spinner
和percent
.
ProgressView view = new ProgressView();
view.start();
看起来:
定制
以下是各种自定义的一些示例:
ProgressView view = new ProgressView(
ProgressViewItem.ofText(10, HorizontalAlign.LEFT),
ProgressViewItem.ofSpinner(3, HorizontalAlign.LEFT),
ProgressViewItem.ofPercent(0, HorizontalAlign.RIGHT));
view.start();
對齊text
和spinner
向左移动并给他们更少的空间。對齊percent
向右
并为其留出剩余空间。
事件
根据进度的状态发送事件。
事件 | 描述 |
---|---|
ProgressViewStart事件 |
进度跟踪已启动 |
ProgressViewEndEvent |
进度跟踪已停止 |
ProgressViewStateChangeEvent 事件 |
进度跟踪状态已更改 |