实战项目旨在交流学习,项目相关资料请在公众号大鸟科创空间回复项目关键字——软件流水灯 以获取,欢迎在评论区交流意见。
简介:分享一个简单的软件项目---用软件实现“流水灯”。
先展示效果:
项目开发环境: Visual Studio 2017 winform 开发
开发语言: C#
demo功能: 用窗体软件模拟单片机的“流水灯”效果
PS:其他版本的VS开发步骤基本一样
首先这个项目会用到一些资源图片,我把它放在此项目的资源文件夹里:
由于winform自带的控件风格比较传统,所以依靠上述图片,可以更好的在界面上面表示流水灯
新建工程项目和上一篇“计算器”的操作步骤一样,可以参考其步骤,这里直接从界面设计开始:
在左侧工具箱中,拖出8个pictureBox控件,用来存放显示8个“灯”的图片,并将他们调整到大小一致、间距一致,如下图所示
每个pictureBox的SizeMode属性设定为 StretchImage
然后在Image属性中,选择“灯”图片作为控件的背景
选择资源这里,选择导入项目资源文件
这里可以把想要用到的“灯”的样式图片都导入进去。
然后选择一个“灯”的图片,作为流水灯熄灭时候的背景图
在所要的图片资源导入以后,右侧解决方案资源管理器中,会出现一个Resources文件夹,用于存放我们导入的图片。
8个pictureBox都设置成同样的属性,并调整界面长度:
PS:这里先设置好一个pictureBox,再复制成8个所需工作量会更少
然后拖入一个button1控件,Text属性修改为“演示1”,表示点击这个按钮,就开始演示第一种花灯演示。
然后工具栏中,拖出Timer1定时器控件,后面花灯演示的代码,要在定时器里面编写
定时器的中断时间设置的是100,表示100ms触发一次定时器中断
然后双击“演示1”按钮,进入代码编写
分别设置两个变量,用来表示流水灯的运动样式(style)和灯的序号(当light1变化到哪一个数字的时候,就表示哪一个灯亮)
在按下按钮后,定时器启动(100ms中断一次,所以流水灯变化频率也就是10HZ)
在定时器中断中,累加light1,加到8为一个循环,然后根据light的变化改变pictureBox的图片即可:
用了一个switch case语句,以便接下来再次添加其他流水灯的样式,以上语句写完后,可以运行观测效果:
然后依照此原理,还可以添加另外一种流水灯运动样式“演示2”,以及停止按钮
其代码和上面原理一样
其样式变化规律同样添加在case事件中即可
以下是效果:
再者,可以改变界面上流水灯的排布,使之变得更为有趣:
至此项目介绍完毕,本项目旨在开源,想要获取源码资料的朋友,关注下面公众号后,回复项目关键字“软件流水灯”,即可获得源码资料下载链接。
作者: 大鸟科创空间, 来源:面包板社区
链接: https://mbb.eet-china.com/blog/uid-me-3949041.html
版权声明:本文为博主原创,未经本人允许,禁止转载!
自做自受 2021-3-7 18:13
火引冰薪 2021-3-7 09:50
欢迎点击,参与讨论
机器人技术与应用
https://mbb.eet-china.com/forum/topic/86914_1_1.html
curton 2021-3-7 01:21
可以做一个心
学习了
面包板工业电子版块3月份活动,免费送20BB,欢迎留言!
https://mbb.eet-china.com/forum/topic/86917_1_1.html