Google Chrome样式进度指示器(进度条)
2012-07-26 09:20
302 查看
© 野比 2012
最近不用Opera,换成用Google Chrome,觉得它的进度条挺有意思的,就像这样:
于是简单复刻了一个。
功能
显示给定进度百分比(0-100)。如果进度值达到100%,则将闪烁指定次数。
属性
BlinkCount,结束后闪烁几次。0为不闪烁,默认2
BlinkSpeed,闪烁速度,0-255,默认10
Image,图标,null则不显示
SpokeColor,辐条颜色
SpokeCount,辐条数量(穿过圆心算1根)
Value,进度百分比
事件
没有加入进度变化或完成事件,如果需要请自行添加。
结构
原理比较简单,参照此图:
层次如下:
用Parent.BackColor填充背景
画进度,用DrawPie()做
画辐条,对穿圆心,drawSpokes()
画图标,居中,drawIcon()
动画
利用一个System.Windows.Forms.Timer控件完成,在Timer中只修改淡出进度,之后Refresh(),在Paint事件中改变填充色的Alpha分量,重绘一个圆。
如此反复数次,即呈现出闪烁效果。
其余部分请参阅代码:点击下载
(完)
© 野比 2012
最近不用Opera,换成用Google Chrome,觉得它的进度条挺有意思的,就像这样:
于是简单复刻了一个。
功能
显示给定进度百分比(0-100)。如果进度值达到100%,则将闪烁指定次数。
属性
BlinkCount,结束后闪烁几次。0为不闪烁,默认2
BlinkSpeed,闪烁速度,0-255,默认10
Image,图标,null则不显示
SpokeColor,辐条颜色
SpokeCount,辐条数量(穿过圆心算1根)
Value,进度百分比
事件
没有加入进度变化或完成事件,如果需要请自行添加。
结构
原理比较简单,参照此图:
层次如下:
用Parent.BackColor填充背景
画进度,用DrawPie()做
画辐条,对穿圆心,drawSpokes()
画图标,居中,drawIcon()
动画
利用一个System.Windows.Forms.Timer控件完成,在Timer中只修改淡出进度,之后Refresh(),在Paint事件中改变填充色的Alpha分量,重绘一个圆。
如此反复数次,即呈现出闪烁效果。
1 if (!timer.Enabled || blink == BlinkCount) 2 drawProgress(canvasGraphic, value); 3 else 4 { 5 ((SolidBrush)pieBrush).Color = Color.FromArgb(count, ForeColor.R, ForeColor.G, ForeColor.B); 6 canvasGraphic.FillEllipse(pieBrush, rect); 7 ((SolidBrush)pieBrush).Color = ForeColor; 8 }
其余部分请参阅代码:点击下载
(完)
© 野比 2012
相关文章推荐
- wpf slider进度条的样式模板,带有进度颜色显示
- wpf slider 进度条的样式模板,带有进度颜色显示
- ExtJS 手工模式进度条 & 自定义进度条样式
- Android Material Design 进度条 自定义进度条样式
- javafX8初探(进度条和进度指示器)
- 源码推荐(3.5):iOS录音和播放功能demo,多样式进度指示器
- 自定义带进度的ProgressRelativeLayout,实现加载网络数据时有进度条样式
- js写圆形动态进度条圆形指示器,动画怎么实现,进度条变色,radialIndicator.js的使用说明用法
- (翻译)第二十二回 JavaFX2.0 进度条和进度指示器
- C# WPF 进度条,根据读取数据显示进度条进度,根据Excel文件读取数据,进度条样式
- wpf slider进度条的样式模板,带有进度颜色显示
- 前端.如何让进度条样式动起来
- Android 高手进阶之自定义View,自定义属性(带进度的圆形进度条)
- Android可显示数字进度的进度条使用教程
- 就是一个进度条——C程序设计进度条51%
- Android自定义半圆进度条 半圆渐变色进度条带指示 半圆开口大小可自由修改
- Android 高手进阶之自定义View,自定义属性(带进度的圆形进度条)
- 自定义Progressbar(更改进度条样式)
- 带波形进度的环形进度条实现
- 自定义View实现Android圆形进度条,支持自定义显示的样式