进度条控件 (SProgress)¶
Warning
The current page still doesn't have a translation for this language.
You can read it through google translate.
进度条是用于显示操作或任务进度的可视化控件,支持水平和垂直两种方向,以及多种显示样式。
基本信息¶
- 类名:
SProgress
- 控件标签:
progress
- 基类:
SWindow
- 功能:显示进度信息
属性说明¶
基本属性¶
属性名 | 类型 | 默认值 | 说明 |
---|---|---|---|
value | int | 0 | 当前进度值 |
min | int | 0 | 最小值 |
max | int | 100 | 最大值 |
vertical | bool | 0 | 是否垂直显示(0-水平,1-垂直) |
showPercent | bool | 0 | 是否显示进度文字(0-不显示,1-显示) |
外观属性¶
属性名 | 类型 | 默认值 | 说明 |
---|---|---|---|
bkgndSkin | string | - | 背景皮肤 |
posSkin | string | - | 数值显示皮肤 |
colorBkgnd | color | - | 背景颜色 |
colorPos | color | - | 进度颜色 |
使用示例¶
基本进度条¶
``xml
### 垂直进度条
``xml
<progress name="progressVertical"
pos="10,40,30,140"
vertical="1"
value="75"/>
带百分比显示的进度条¶
``xml
### 自定义皮肤的进度条
``xml
<progress name="progressStyled"
pos="10,180,210,200"
value="60"
bkgndSkin="skin_progress_bkgnd"
posSkin="skin_progress_pos"/>
事件处理¶
进度条控件通常作为显示控件使用,较少触发事件。但可以通过代码监听值变化:
``cpp // 事件处理示例 void UpdateProgress(int nValue) { SProgress *pProgress = FindChildByName2## 代码操作
``cpp
// 查找进度条控件
SProgress *pProgress = FindChildByName2<SProgress>(L"progressBasic");
// 设置进度值
pProgress->SetValue(75);
// 获取当前值
int nValue = pProgress->GetValue();
// 设置范围
pProgress->SetRange(0, 200);
// 获取范围
int nMin, nMax;
pProgress->GetRange(&nMin, &nMax);
最佳实践¶
- 合理设置范围:根据实际需要设置合适的 min 和 max 值
- 适时更新:在长时间操作中定期更新进度值,给用户良好反馈
- 视觉反馈:使用 showPercent 属性显示具体数值
- 皮肤定制:通过 bkgndSkin 和 posSkin 属性定制外观
常见问题¶
Q: 进度条不显示百分比怎么办?¶
A: 检查是否设置了 showPercent 属性为 1。
Q: 进度条显示异常怎么办?¶
Q: 垂直进度条方向不对怎么办?¶
A: 检查 vertical 属性是否设置为 1。
相关控件¶
- 滑块(SSliderBar) - 可交互调节数值的进度条
- 滚动条(SScrollBar) - 用于滚动视图的控件