吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2300|回复: 22
收起左侧

[易语言 原创] 易语言绘制时钟表盘

[复制链接]
lccccccc 发表于 2024-2-16 19:17
本帖最后由 lccccccc 于 2024-2-16 19:23 编辑

自己写了一个易语言绘制时钟的程序,写的不是很好,大佬勿喷,一起学习交流、共同进步就行了。
屏幕截图 2024-02-16 192200.png
屏幕截图 2024-02-16 192233.png

程序代码部分:
.版本 2

.程序集 窗口程序集_启动窗口
.程序集变量 小时, 整数型
.程序集变量 分钟, 整数型
.程序集变量 小时夹角, 整数型
.程序集变量 分钟夹角, 整数型
.程序集变量 计算结果, 整数型
.程序集变量 中心x, 整数型
.程序集变量 中心y, 整数型
.程序集变量 返回x, 小数型
.程序集变量 返回y, 小数型

.子程序 _计算_被单击

小时 = 到整数 (时.内容)
分钟 = 到整数 (分.内容)
小时夹角 = (小时 + 分钟 ÷ 60) × 30
分钟夹角 = 分钟 × 6

画板1.清除 (, , , )
画板1.画笔颜色 = 颜色选择器1.颜色
画板1.文本颜色 = 颜色选择器1.颜色
画钟表 ()
画板1.画笔粗细 = 5
获取极坐标在屏幕上的位置 (100, 小时夹角)
画板1.画直线 (中心x, 中心y, 返回x + 中心x, 返回y + 中心y)
画板1.画笔粗细 = 3
获取极坐标在屏幕上的位置 (150, 分钟夹角)
画板1.画直线 (中心x, 中心y, 返回x + 中心x, 返回y + 中心y)

.子程序 __启动窗口_创建完毕

中心x = 画板1.宽度 ÷ 2
中心y = 画板1.高度 ÷ 2

.子程序 极坐标转平面直角坐标
.参数 半径, 整数型
.参数 极角, 整数型
.局部变量 弧, 小数型

弧 = 极角 × #pi ÷ 180
返回x = 半径 × 求余弦 (弧)
返回y = 半径 × 求正弦 (弧)

.子程序 画钟表
.局部变量 度数, 整数型
.局部变量 i, 整数型
.局部变量 X1, 整数型, , , 开始X坐标
.局部变量 Y1, 整数型, , , 开始Y坐标
.局部变量 X2, 整数型, , , 结束X坐标
.局部变量 Y2, 整数型, , , 结束Y坐标

画板1.画笔粗细 = 4
画板1.画椭圆 (5, 5, 中心x × 2 - 5, 中心y × 2 - 5)
获取极坐标在屏幕上的位置 (225, 45)
画板1.画椭圆 (中心x - 返回x, 返回y + 中心y, 返回x + 中心x, 中心y - 返回y)
.计次循环首 (60, i)
    度数 = i × 6
    获取极坐标在屏幕上的位置 (160, 度数)
    X1 = 返回x + 中心x
    Y1 = 返回y + 中心y
    .如果 (i % 5 = 0)
        获取极坐标在屏幕上的位置 (225, 度数)
        画板1.定位写出 (返回x + 中心x - 12, 返回y + 中心y - 12, 到文本 ((i - i % 5) ÷ 5))
        获取极坐标在屏幕上的位置 (200, 度数)
    .否则
        获取极坐标在屏幕上的位置 (180, 度数)
    .如果结束
    X2 = 返回x + 中心x
    Y2 = 返回y + 中心y
    画板1.画直线 (X1, Y1, X2, Y2)
.计次循环尾 ()

.子程序 获取极坐标在屏幕上的位置
.参数 半径, 整数型
.参数 极角, 整数型

极坐标转平面直角坐标 (半径, 极角 - 90)

.子程序 _按钮6_被单击

时.内容 = 到文本 (到整数 (时.内容) % 12 + 1)
_计算_被单击 ()

.子程序 _按钮5_被单击

时.内容 = 到文本 ((到整数 (时.内容) + 11) % 12)
.如果 (时.内容 = “0”)
    时.内容 = “12”
.否则

.如果结束
_计算_被单击 ()

.子程序 _按钮1_被单击
.局部变量 分钟1, 整数型

分钟1 = 到整数 (分.内容) + 1
.如果 (分钟1 ≥ 60)
    分钟1 = 分钟1 - 60
    _按钮6_被单击 ()  ' 增加一个小时
.否则

.如果结束
分.内容 = 到文本 (分钟1)
_计算_被单击 ()

.子程序 _按钮2_被单击
.局部变量 分钟1, 整数型

分钟1 = 到整数 (分.内容) - 1
.如果 (分钟1 < 0)
    分钟1 = 分钟1 + 60
    _按钮5_被单击 ()  ' 减去一个小时
.否则

.如果结束
_计算_被单击 ()
分.内容 = 到文本 ((到整数 (分.内容) + 59) % 60)
_计算_被单击 ()

.子程序 _按钮4_被单击
.局部变量 分钟1, 整数型

分钟1 = 到整数 (分.内容) + 5
.如果 (分钟1 ≥ 60)
    分钟1 = 分钟1 - 60
    _按钮6_被单击 ()  ' 增加一个小时
.否则

.如果结束
分.内容 = 到文本 (分钟1)
_计算_被单击 ()

.子程序 _按钮3_被单击
.局部变量 分钟1, 整数型

分钟1 = 到整数 (分.内容) - 5
.如果 (分钟1 < 0)
    分钟1 = 分钟1 + 60
    _按钮5_被单击 ()  ' 减去一个小时
.否则

.如果结束
_计算_被单击 ()
分.内容 = 到文本 (分钟1)
_计算_被单击 ()

.子程序 _时钟1_周期事件

' 程序启动时,自动开始画钟面,并取消时钟1
_计算_被单击 ()
时钟1.时钟周期 = 0

.子程序 _颜色选择器1_颜色被改变

_计算_被单击 ()


UI 界面:
   

UI 界面

UI 界面




完整程序下载: 时钟绘制.zip (3.18 KB, 下载次数: 61)

免费评分

参与人数 3吾爱币 +9 热心值 +2 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
竹轩 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
lgc81034 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

52soft 发表于 2024-2-16 19:27
美观的表盘
52HWA 发表于 2024-2-16 19:28
wwd2018 发表于 2024-2-16 19:53
chenyong2020 发表于 2024-2-16 20:05
不错,看起来非常厉害。谢谢分享。
andyfky 发表于 2024-2-16 20:27
已经很不错了,加油!
yct0605 发表于 2024-2-16 20:29
最容易学的语言,中文直接了然啊。
刘大富 发表于 2024-2-16 22:17
挺不错的
hao6988456 发表于 2024-2-16 23:13
可以,不错
wikiyc 发表于 2024-2-17 08:02
好看,谢谢分享。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:41

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表