首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >易语言画板组件实现自绘圆形进度条源码

易语言画板组件实现自绘圆形进度条源码

作者头像
全栈程序员站长
发布2022-09-18 10:10:32
发布2022-09-18 10:10:32
2K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

进度条是易语言常用的一个组件,有时候我们想让进度有个性,比如绘制一个圆形进度条,下面封装了子程序,直接调用就可以了。窗口用到三个编辑框,一个时钟,一个标签,一个画板,三个颜色选择器,效果如下图,我们可以灵活调整双环椭圆大小,颜色等等。

一、源码:

代码语言:javascript
代码运行次数:0
运行
复制
.版本 2

.子程序 画圆进度条, 整数型
.参数 画板, 画板, , 画板名称
.参数 最小位置, 双精度小数型, , 进度条的最小初始值
.参数 当前位置, 双精度小数型, , 返回当前的位置
.参数 最大位置, 双精度小数型, , 进度条的最大位置
.参数 进度条宽度, 整数型, , 进度条宽度
.参数 进度条背景色, 整数型, 可空, 进度条背景色
.参数 进度条颜色, 整数型, 可空, 进度条颜色
.参数 中间颜色, 整数型, 可空, 中间颜色
.局部变量 变量, 整数型
.局部变量 字体, 字体

当前位置 = 最小位置 + 当前位置
变量 = 到数值 (当前位置 - 最小位置) ÷ 到数值 (最大位置 - 最小位置) × 100
画板.清除 (, , , )
画板.自动重画 = 真

画板.刷子颜色 = 进度条颜色
画板.画椭圆 (1, 1, 画板.宽度 - 3, 画板.高度 - 3)
画板.刷子颜色 = 进度条背景色
画板.画饼 (1, 1, 画板.宽度 - 3, 画板.高度 - 3, 画板.宽度 ÷ 2 - 1 + 到数值 (画板.宽度 ÷ 2 - 3) × 求正弦 (#pi ÷ 50) - 到数值 (画板.宽度 ÷ 2 - 3) × 求正弦 (#pi ÷ 50), 画板.高度 ÷ 2 - 1 - 到数值 (画板.高度 ÷ 2 - 3) × 求余弦 (#pi ÷ 50) - 到数值 (画板.宽度 ÷ 2 - 3) × 求正弦 (#pi ÷ 50), 画板.宽度 ÷ 2 - 1 + 到数值 (画板.宽度 ÷ 2 - 3) × 求正弦 (#pi ÷ 50 × 变量), 画板.高度 ÷ 2 - 1 - 到数值 (画板.高度 ÷ 2 - 3) × 求余弦 (#pi ÷ 50 × 变量))
画板.刷子颜色 = 中间颜色
画板.画椭圆 (1 + 进度条宽度, 1 + 进度条宽度, 画板.宽度 - 3 - 进度条宽度, 画板.高度 - 3 - 进度条宽度)
画板.定位写出 (画板.宽度 ÷ 2 - 字体.字体大小 ÷ 2, 画板.高度 ÷ 2 - 字体.字体大小 ÷ 2, 到文本 (变量) + “%”)
.如果 (当前位置 ≥ 最大位置)
返回 (最大位置)
.否则
返回 (当前位置)
.如果结束

二、调用方法

要通过时钟来调用

代码语言:javascript
代码运行次数:0
运行
复制
.版本 2

.子程序 _时钟1_周期事件
.局部变量 i, 整数型, 静态

.如果 (i + 到数值 (编辑框1.内容) < 到数值 (编辑框2.内容))
i = i + 1
.否则
i = 0
.如果结束
标签7.标题 = 到文本 (画圆进度条 (画板1, 到数值 (编辑框1.内容), i, 到数值 (编辑框2.内容), 到数值 (编辑框3.内容), 颜色选择器1.颜色, 颜色选择器2.颜色, 颜色选择器3.颜色))

源码:易语言自绘圆形进度条源码

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/158332.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档