# 进度

> 进度条组件的参考：把一个有上下限的读数画成进度条、光柱图或者分段刻度，以及编辑器里的每一项属性。

**进度**组件把一个有上下限的数值读数沿着一条轨道画出来。它的三种呈现方式回答的是关于同一个值的不同问题：整个量程被占了多少、其中走过了多少格、读数落在所声明的哪一段里，正因如此它们是一次选择，而不是一种样式。没有读数的轨道根本不画填充（空着的进度条会被读成一个测出来的零），并且在数字的位置显示缺口标记（`—`）。`NaN` 是一个读数，不是缺口：它写成这个词，旁边带着单位，轨道保持空着，因为 `NaN` 在刻度上没有位置。

## 内容与数据 {#content-and-data}

| 属性 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 标签 | 轨道上方的可选说明文字。过长的标注用省略号截断，完整文字在提示里，它绝不会占用读数的地方。 | 文本 | 空 |
| 地址 | 所显示数值点位的带根 Logic 地址。字段从实时点位清单里给建议，过滤为数值点位，指名之后显示该点位当前的读数。 | 地址 | 空 |

## 格式 {#format}

| 属性 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 最小 | 刻度从哪里开始，按点位的工程单位。 | 数值 | 0 |
| 最大 | 刻度到哪里结束。低于最小值就没有刻度可以安放读数了。 | 数值 | 100 |
| 单位 | 读数旁边的可选单位后缀。 | 文本 | 空 |
| 小数位 | 读数固定的小数位数。留空时，类型为整数的点位写出来不带小数，其他数字按工作站的小数位数写；刻度的两端和参考值也像读数一样跟着点位的小数位数走（整数不带小数，实数按工作站的小数位数）。 | 0 到 15 | 留空则用工作站的偏好 |
| 位数 | 读数在小数分隔符之前预留多少位；超出的读数会被标记（`####`），完整读数在提示里。以文字答复的点位（一份工单、一个批次、一个标志位）绝不戴这个标记，哪怕它的文字全是数字也一样：字段容不下的部分以省略号（…）结尾，完整读数在提示里。 | 1 到 20 | 留空则由最小值和最大值中较宽的那个推出来 |
| 字号 | 由单元格决定字号，还是由操作员指定。 | 单元格容得下的最大尺寸 · 我指定的大小 | 单元格容得下的最大尺寸 |
| 磅 | 指定的那个字号。只在指定模式下显示。 | 9 到 144 | 12 |
| 读数形式 | 读数用什么方式写出来。 | 数字 · 百分比 · 时长 | 数字 |
| 数值按什么计 | 格式为时长时，一个单位的值表示多少。 | 秒 · 毫秒 · 分钟 | 秒 |
| 写出读数 | 读数是否写在轨道旁边。 | 开 / 关 | 开 |
| 写出刻度的两端 | 两端是否写在轨道下面。 | 开 / 关 | 关 |

## 进度条 {#track}

| 属性 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 画法 | 呈现方式：从刻度起点一直连续填充到读数处；把同样的填充切成一格一格、按读数逐格点亮（光柱图）；或者把声明好的区段沿轨道画出来，读数作为一个标记骑在上面，这时什么也不填充，因为问题是这个值落在刻度的什么位置，而不是用掉了多少。 | 填充到读数处的进度条 · 按读数逐格点亮 · 各个区段，并在上面标出读数 | 填充到读数处的进度条 |
| 走向 | 轨道朝哪个方向走：横贯单元格、刻度从左边缘开始，或者沿单元格向上、刻度从底部开始，也就是一根液位柱。 | 横贯单元格 · 沿单元格向上 | 横贯单元格 |
| 格数 | 分格的轨道切成多少格。只有那一种呈现方式才问这一项。 | 2 到 50 | 10 |
| 刻度从远端开始 | 把刻度的方向反过来，于是填充朝着近端长回来。它只是方向，绝不是第二对端点：最小值仍旧是最小值。 | 开 / 关 | 关 |
| 强调色 | 填充的颜色从哪里来。它说的是身份，不是含义：读数的含义由区段说了算。 | 普通颜色 · 一种颜色 · 一个颜色点位 | 普通颜色 |
| 浅色 / 深色 | 强调色作为浅色和深色的一对，两个都要写，因为由当前运行的主题决定屏幕上出现哪一半。只在强调色是一种颜色时显示。 | 各写 `#RRGGBB` | 两者都是 `#5470C6` |
| 颜色点位 | 强调色所跟随的那个 Color 点位的带根 Logic 地址。只在强调色是颜色点位时显示。 | 地址 | 空 |

## 刻度 {#scale}

共用的**刻度**分区声明各个区段和参考值。

- 每个**区段**从它上面那个区段结束的地方开始，一直覆盖到自己的上限；超过最后一个上限的读数不属于任何区段。色调（中性、信息、正常、注意、严重）给写出来的读数上色，而在分段的那种呈现方式里，区段本身就是轨道，不管点位有没有答复都照画，因为它们是声明，不是测量。配了说法的区段把自己的名称写在头部，写在数字前面，好让读数守住这一行的末尾。
- **参考值**在轨道上标出一个设定值或者标称值：可以不标、标一个固定值，或者标一个随配方移动的点位。这个标记的提示里带着参考值，并且只有刻度够得着它时才画出来。
