C#实现简易点餐功能
作者:小白你咋让人拴住了 发布时间:2021-10-20 22:14:31
标签:C#,点餐
本文实例为大家分享了C#实现简易点餐功能的具体代码,供大家参考,具体内容如下
图示效果
实现过程
1.设计界面
2.设计控件及其属性
3.实现点击事件、显示事件以及运算
4实现功能
代码如下
private void Form1_Load(object sender, EventArgs e)
{
// 给FlowLayoutPanel控件添加tag属性,编号为index, 菜名为name,价格为money
//根据菜品的数量 添加对应的序号按钮
foreach (Control item in flowLayoutPanel1.Controls)//找到菜单中所有的panel控件
{ //就是创建Button对象 使用关键new创建对象
Button btn = new Button(); // 实例化button对象
// 将每一个子控件赋值给对应按钮的Tag属性
btn.Tag = item;
btn.Size = new Size(50, 25);//设置点击按钮的大小
btn.Font = new Font("宋体", 18F);//设置按钮显示字体及其字体大小
foreach (Control control in item.Controls)
{
//根据控件的Tag属性值来判断以及获取对应控件中的文本从而设置给btn.Text
// 如果Tag为index 那就是编号
if (control.Tag.ToString() == "index")
{
btn.Text = control.Text;
}
}
flowLayoutPanel2.Controls.Add(btn);
//加载时显示按钮
btn.Click += Btn_Click; // 添加点击事件+=
}
}
int count = 0; // 价格金额
private void Btn_Click(object sender, EventArgs e)
{
Button clickBtn = (Button)sender;
Label lab = new Label();
//获取菜单中每一个子控件中的菜名与价格
// 获取到编号按钮对应的菜单子控件
Control menu = (Control)clickBtn.Tag;
// 遍历的是菜单中的子控件
foreach (Control item in menu.Controls)
{
if (item.Tag.ToString() == "name")
{
lab.Text = item.Text;
}
if (item.Tag.ToString() == "money")
{
//int.Parse(需要转换的字符串)
//将字符串转换为数字的方法
count += int.Parse(item.Text);
}
}
flowLayoutPanel3.Controls.Add(lab);//(点击事件)显示点击过的菜名
label18.Text = count + "元";//总共点过菜的金额总和
}
来源:https://blog.csdn.net/weixin_44024993/article/details/105623320
0
投稿
猜你喜欢
- Java的集合类是一种特别有用的工具,它可以用于存储数量不等的多个对象,并可以实现常用的数据结构,如栈、队列等。Java集合还可以用于板寸具
- 背景传统 SpringMVC 项目中,我们可以定义容器初始化 Servlet ,然后在 web.xml 配置该 Servlet ,指定 lo
- 本文实例讲述了C#使用IComparer自定义List类实现排序的方法。分享给大家供大家参考。具体如下:List类中不带参数的Sort函数可
- java 计算同比增长工具类为了数据的严谨性,统一装换为BigDecimal,话不多说,看代码。package com.pig4cloud.
- 1 泰勒级数介绍近期工作中需要使用matlab建模,期间做案例的时候有个方程:sin(x)=0,要求不使用现有api进行求解,然后有点懵,不
- Java中的StringUtils引入及使用pom.xml中引入依赖<!-- https://mvnrepository.com/ar
- 问题在使用 Abp 框架的后台作业时,当后台作业抛出异常,会导致整个程序崩溃。在 Abp 框架的底层执行后台作业的时候,有 try/catc
- java Mybatis存进时间戳封装了一个实体类,里面有个字段 Integer createTime。要利用这个实体类将一个时间戳存进数据
- 首先,将json串转为一个JObject对象:JObject jo = (JObject)JsonConvert.DeserializeOb
- 大家在银行交易某些业务时,都可以看到无论是身份证、银行账号中间部分都是用*号替换的,下面小编把代码整理如下:/// <summary&
- 目录@ConfigurationProperties使用@ConfigurationProperties特点宽松绑定支持复杂属性类型激活@C
- 一、同步调用1、同步调用会按照代码顺序来执行2、同步调用会阻塞线程,如果是要调用一项繁重的工作(如大量IO操作),可能会让程序停顿很长时间,
- 基本概念Java中创建对象时,一旦程序终止,创建的对象可能就不存在.要想使得对象能够在程序不运行的状态下依然能够保存对象的信息,这时就需要用
- 目录首先,写一个需求文档:一、登录界面1.界面2.登录3.退出二、开始游戏界面三、缓冲加载游戏界面四、游戏主界面五、结束界面上代码首先,写一
- 包括系统钩子和线程钩子,或者叫全局钩子和私有钩子。系统钩子需要一个单独的DLL,这个地方耽误了不少时间,网上有说可以不用单独DLL的。 现在
- 一、简介SpringBoot 最强大的功能就是把我们常用的场景抽取成了一个个starter(场景启动器),我们通过引入SpringBoot
- SpringBoot @ConditionalOnBean实现原理在SpringBoot1.5.X时判断条件是OR,SpringBoot2.
- OpenCV概述OpenCV做为功能强大的计算机视觉开源框架,包含了500多个算法实现,而且还在不断增加,其最新版本已经更新到3.2。其SD
- 在开发过程中,我们经常需要将数据库查询到的值放入jsp页面进行显示,在springmvc的controller中,我们采用request将数
- 一、Spring启动时实现初始化的几种方式准确的说是spring容器实例化完成后,几种初始化的方式。为什么这么说呢?下看面示例:@Slf4j