机房重构用一个Button实现上下机功能

简介: 机房重构用一个Button实现上下机功能

机房重构马上结束了,当时觉得难的部分也一一弄懂,现在看来不算什么,这个时间就想要实现一下自己的小想法。对于一个界面来说,简洁是最好的,所以就有了一个想法,上下机按钮可否用一个来实现呢?

说干就干,其实不难,代码如下:

private void button7_Click(object sender, EventArgs e)
        {
            if (button7.Text=="上机")
            { 
                //实例化上线外观层
                Facade.OnLineFacade2 open = new Facade.OnLineFacade2();
                //将用户名传值
                online.CardNo = LoginUser.UserID;
                online.Computer= Environment.MachineName;
                online.OnDate = DateTime.Now.ToShortDateString().ToString();
                online.OnTime = DateTime.Now.ToShortTimeString().ToString();
                lblOntime.Text = DateTime.Now.ToShortTimeString().ToString();
                //调用外观层方法进行逻辑判断
                string message = open.Open(online);
                //提示框显示
                if (message == "上机成功")
                {
                    timer1.Start();
                    timer2.Start();
                    MessageBox.Show("上机成功!", "温馨提示");
                    button7.Text = "下机";
                }
                if (message == "此卡号正在上机")
                {
                    MessageBox.Show("此卡号正在上机!", "温馨提示");
                }
            }
            else if (button7.Text == "下机")
            {
                string status = "正常下机";
                //调用下机封装类
                OffLineUI.OffLine(Convert.ToInt32(txttime.Text), Convert.ToDecimal(tcosumercash.Text), Convert.ToDecimal(lblCash.Text), status);
                //计时器停止
                timer1.Stop();
                tcosumercash.Text = "00";
                lblOffTime.Text = DateTime.Now.ToShortTimeString().ToString();
                if (OffLineUI.async1 == true)
                {
                    MessageBox.Show("下机成功!", "温馨提示");
                    button7.Text = "上机";
                }
            }
        }

根据对button的text值的赋值,结合if else的判断,很简单的实现了这个功能。其中一个很值得注意的点是:C#中“=”和“==”的区别

相关文章
|
12月前
|
安全 UED
HTTP 代理 IP 使用中的速度与安全性的权衡
随着科技和互联网的发展,越来越多企业使用代理服务。本文介绍了用户使用HTTP代理IP后体验感变差的几个原因,包括延迟增加、带宽上限、服务器负载高、数据包丢失、安全性问题和兼容性问题。希望这些信息能帮助用户解决问题。
212 1
|
测试技术 UED 开发者
软件测试的艺术与科学:探索有效的测试策略
在软件开发的宇宙中,测试是一颗璀璨的星辰,它不仅保障着产品的质量,也指引着项目的方向。本文将带你穿梭于测试的银河系,从基础的单元测试到复杂的集成测试,再到全面的系统测试,我们将一探究竟。你会发现,每一个测试阶段都是一次对代码深度和广度的挑战,也是一次对开发者耐心和智慧的考验。准备好了吗?让我们开始这段探索之旅,看看如何通过精心设计的测试案例来确保我们的软件能够在现实世界中稳健运行。
|
3天前
|
云安全 人工智能 自然语言处理
|
7天前
|
人工智能 Java API
Java 正式进入 Agentic AI 时代:Spring AI Alibaba 1.1 发布背后的技术演进
Spring AI Alibaba 1.1 正式发布,提供极简方式构建企业级AI智能体。基于ReactAgent核心,支持多智能体协作、上下文工程与生产级管控,助力开发者快速打造可靠、可扩展的智能应用。
703 17
|
10天前
|
数据采集 人工智能 自然语言处理
Meta SAM3开源:让图像分割,听懂你的话
Meta发布并开源SAM 3,首个支持文本或视觉提示的统一图像视频分割模型,可精准分割“红色条纹伞”等开放词汇概念,覆盖400万独特概念,性能达人类水平75%–80%,推动视觉分割新突破。
742 57
Meta SAM3开源:让图像分割,听懂你的话
|
7天前
|
搜索推荐 编译器 Linux
一个可用于企业开发及通用跨平台的Makefile文件
一款适用于企业级开发的通用跨平台Makefile,支持C/C++混合编译、多目标输出(可执行文件、静态/动态库)、Release/Debug版本管理。配置简洁,仅需修改带`MF_CONFIGURE_`前缀的变量,支持脚本化配置与子Makefile管理,具备完善日志、错误提示和跨平台兼容性,附详细文档与示例,便于学习与集成。
328 116
|
10天前
|
机器学习/深度学习 人工智能 自然语言处理
AgentEvolver:让智能体系统学会「自我进化」
AgentEvolver 是一个自进化智能体系统,通过自我任务生成、经验导航与反思归因三大机制,推动AI从“被动执行”迈向“主动学习”。它显著提升强化学习效率,在更少参数下实现更强性能,助力智能体持续自我迭代。开源地址:https://github.com/modelscope/AgentEvolver
491 37