百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

C#实战|大乐透选号器-实现点击变色功能

bigegpt 2025-01-15 10:57 7 浏览

哈喽,你好啊,我是雷工!

关于大乐透选择器的实例项目前面已经记录了3篇笔记,这是第4篇;

本篇练习实现手动选号,当点击对应的号码球时,号码球变红色或蓝色或灰色来表示选中或取消选中;

以下为练习笔记。

01 效果演示

①:实现功能在红色球区域点击选择球时,点击的球体变成红色,再次点击变灰色;

②:在蓝色球区点击球时,点击球体变成蓝色,再次点击变灰色;

02 编程思路

①:编辑点击变色事件,当点击某个球时判断该球的Tag值(设计Tag值表示颜色,0表示灰色;1-表示红色);

②:若Tag=0则为灰色将其改为红色,并将Tag值置1;

③:若Tag=1则为红色将其改为灰色,并将Tag值置0;

④:在红色区域初始化方法IniRedPanel中增加点击事件;

蓝色区域的变色同理;

03 实现代码

3.1、点击变色事件

代码如下:

#region 点击选择球变色
//红色区域单击事件
private void lblRed_Click(object sender,EventArgs e)
{
 Label lbl = (Label)sender;
 if(lbl.Tag.ToString().Equals("0"))//tag中的值表示颜色0-灰色;1-红色;
 {
lbl.Image = Image.FromFile("Image/red.png");
lbl.Tag = "1";
 }
 else
 {
lbl.Image = Image.FromFile("Image/gray.png");
lbl.Tag = "0";
 }
}
//蓝色区域单击事件
private void lblRed_Click(object sender,EventArgs e)
{
 Label lbl = (Label)sender;
 if(lbl.Tag.ToString().Equals("0"))//tag中的值表示颜色0-灰色;1-蓝色;
 {
lbl.Image = Image.FromFile("Image/blue.png");
lbl.Tag = "1";
 }
 else
 {
lbl.Image = Image.FromFile("Image/gray.png");
lbl.Tag = "0";
 }
}
#endregion

3.2、增加单击事件

①:在红色区域初始化方法IniRedPanel中增加点击事件;

代码如下:

//增加单击事件,实现颜色切换
lbl.Click += new EventHandler(lblRed_Click);

②:在蓝色区域初始化方法IniBluePanel中增加点击事件;

代码如下:

//增加单击事件,实现颜色切换
lbl.Click += new EventHandler(lblBlue_Click);

04 后记

以上为点击变色的功能实现,其实该功能类似用一个按钮控制启停,上位机程序中会经常用到;

当然该实现只是一个便于理解的过渡练习,接下来会对该功能进行优化,例如增加点击时文本随底色变颜色,增加美观度;

为了提升复用性和精简重复代码;

大家有更简单的实现思路可以在评论区留言,也可以在交流群内讨论,相互学习,共同进步。

相关推荐

10w qps缓存数据库——Redis(redis缓存调优)

一、Redis数据库介绍:Redis:非关系型缓存数据库nosql:非关系型数据库没有表,没有表与表之间的关系,更不存在外键存储数据的形式为key:values的形式c语言写的服务(监听端口),用来存...

Redis系列专题4--Redis配置参数详解

本文基于windowsX64,3.2.100版本讲解,不同版本默认配置参数不同在Redis中,Redis的根目录中有一个配置文件(redis.conf,windows下为redis.windows....

开源一夏 | 23 张图,4500 字从入门到精通解释 Redis

redis是目前出场率最高的NoSQL数据库,同时也是一个开源的数据结构存储系统,在缓存、数据库、消息处理等场景使用的非常多,本文瑞哥就带着大家用一篇文章入门这个强大的开源数据库——Redis。...

redis的简单与集群搭建(redis建立集群)

Redis是什么?是开源免费用c语言编写的单线程高性能的(key-value形式)内存数据库,基于内存运行并支持持久化的nosql数据库作用主要用来做缓存,单不仅仅是做缓存,比如:redis的计数器生...

推荐几个好用Redis图形化客户端工具

RedisPlushttps://gitee.com/MaxBill/RedisPlusRedisPlus是为Redis可视化管理开发的一款开源免费的桌面客户端软件,支持Windows、Linux...

关于Redis在windows上运行及fork函数问题

Redis在将数据库进行持久化操作时,需要fork一个进程,但是windows并不支持fork,导致在持久化操作期间,Redis必须阻塞所有的客户端直至持久化操作完成。微软的一些工程师花费时间在解决在...

你必须懂的Redis十大应用场景(redis常见应用场景)

Redis作为一款高性能的键值存储数据库,在互联网业务中有着广泛的应用。今天,我们就来详细盘点一下Redis的十大常用业务场景,并附上Golang的示例代码和简图,帮助大家更好地理解和应用Redis。...

极简Redis配置(redis的配置)

一、概述Redis的配置文件位于Redis安装目录下,文件名为redis.conf(Windows名为redis.windows.conf,linux下的是redis.conf)你可以通过C...

什么是redis,怎么启动及如何压测

从今天起咱们一起来学习一下关于“redis监控与调优”的内容。一、Redis介绍Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。...

一款全新Redis UI可视化管理工具,支持WebUI和桌面——P3X Redis UI

介绍P3XRedisUI这是一个非常实用的RedisGUI,提供响应式WebUI访问或作为桌面应用程序使用,桌面端是跨平台的,而且完美支持中文界面。Githubhttps://github....

windows系统的服务器快速部署java项目环境地址

1、mysql:https://dev.mysql.com/downloads/mysql/(msi安装包)2、redis:https://github.com/tporadowski/redis/r...

window11 下 redis 下载与安装(windows安装redis客户端)

#热爱编程是一种怎样的体验#window11下redis下载与安装1)各个版本redis下载(windows)https://github.com/MicrosoftArchive/r...

一款轻量级的Redis客户端工具,贼好用!

使用命令行来操作Redis是一件非常麻烦的事情,我们一般会选用客户端工具来操作Redis。今天给大家分享一款好用的Redis客户端工具TinyRDM,它的界面清新又优雅,希望对大家有所帮助!简介Ti...

一个.NET开发且功能强大的Windows远程控制系统

我们致力于探索、分享和推荐最新的实用技术栈、开源项目、框架和实用工具。每天都有新鲜的开源资讯等待你的发现!项目介绍SiMayRemoteMonitorOS是一个基于Windows的远程控制系统,完...

Redis客户端工具详解(4款主流工具)

大家好,我是mikechen。Redis是大型架构的基石,也是大厂最爱考察内容,今天就给大家重点详解4款Redis工具@mikechen本篇已收于mikechen原创超30万字《阿里架构师进阶专题合集...