ProgressView

ProgressView 是一个基本实现,提供了绘制进度信息的功能。继承 BoxViewProgressView 使用下面描述的概念绘制其内容

  • _ProgressState_包含关于运行时状态的各种信息。

    • _tickStart_Tick 值的下限。

    • _tickEnd_刻度值的上限

    • tickValue Current tick value

    • _running_运行状态,为真或假

    • _startTime_进度开始时的毫秒数

    • _updateTime_进度更新的已知时刻的最后一个毫秒数

  • _ProgressContext_是用于 _ProgressViewItem_的上下文

    • _description_对进度进行描述

    • state The ProgressState

    • view The owning ProgressView

    • _spinner_用于 _ProgressView_的 _Spinner_表示

    • 其他用于帮助绘制项目的方法

  • _ProgressViewItem_是用于 _ProgressView_中的单元格的表示

有些内建的项目,例如 textspinnerpercent。 默认 ProgressView 为您提供 textspinnerpercent

link:../../../../../src/test/java/org/springframework/shell/docs/ProgressViewSnippets.java[role=include]

并且呈现效果如下:

link:example$tui-progress-1.cast[role=include]

Customisation

下面是一些关于各种自定义的示例:

link:../../../../../src/test/java/org/springframework/shell/docs/ProgressViewSnippets.java[role=include]

textspinner 对齐到左侧并为它们留出较少的空间。将 percent 对齐到右侧并为其留出剩余的空间。

link:example$tui-progress-2.cast[role=include]

Default Bindings

没有任何默认绑定。

Events

事件根据进度状态发送。

Table 1. ProgressView Events
Event Description

ProgressViewStartEvent

Progress tracking has started

ProgressViewEndEvent

Progress tracking has stopped

ProgressViewStateChangeEvent

进度跟踪状态发生改变