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


猜你喜欢
- 百度百科说法:Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务
- Spring Boot整合Spring Data JPA1)加入依赖<dependency> <groupId
- 从什么是IOC开始?Spring——春天,Java编程世界的春天是由一位音乐家—
- 我在做毕设的时候采用shiro进行登录认证和权限管理的实现。其中需求涉及使用三个角色分别是:学生、教师、管理员。现在要三者实现分开登录。即需
- 之前开发项目,一直都使用的是外壳程序加子程序的模式,通过外壳程序去启动子程序,外壳程序和子程序之间的通信,是使用配置文件完成的。我总觉得这样
- Kotlin基础教程之数据类型一切都是对象.在Kotlin中一切都是对象.Kotlin有一些基本类型Boolean,Byte,Shot,In
- 最近在读刘增辉老师所著的《MyBatis从入门到精通》一书,很有收获,于是将自己学习的过程以博客形式输出,如有错误,欢迎指正,如帮助到你,不
- 本文为大家分享了swing实现窗体拖拽和拉伸的具体代码,供大家参考,具体内容如下当用setUndecorated(true) 后 JFram
- 开发程序的时候经常会引用一些第三方的DLL,然后编译生成的exe文件就不能脱离这些DLL独立运行了。但是,很多时候我们本想开发一款只需要一个
- 一、案例场景在使用 @Autowired 时,你或多或少都会遇过类似的错误:required a single bean, but 2 we
- NTP是Android原生通过网络获取时间的机制,其中关键代码逻辑都在NetworkTimeUpdateService,它是Android系
- 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后除以10的余数代替该数字,再将第一
- 将一个字符串转化成String[]数组,提供两种方法前言将字符串转化成数组提供两种方法:1.split("");2.to
- 开发Android APP微信支付功能,需要完成三个步骤:第一步生成预支付订单、第二步生成微信支付参数、第三步调起微信APP支付。除了需要审
- 客户端代码using System;using System.Collections.Generic;using System.Compon
- 本文实例讲述了C#查找字符串所有排列组合的方法。分享给大家供大家参考。具体实现方法如下:// 1. remove first char //
- WPF 之列表分页控件框架使用大于等于.NET40。Visual Studio 2022。项目使用 MIT 开源许可协议
- SSM框架是JavaWeb必学的框架,虽说基本的增删改查很简单,但是当面临一些特殊情况时,有时还是会显得手足无措,此篇用来记录一些特殊场景下
- 基本属性要求<LinearLayout android:layout_width="match_parent&q
- 开篇Druid号称是Java语言中最好的数据库连接池,并且能够提供强大的监控和扩展功能。作为日常使用较多的数据库连接组件,纯粹个人兴趣研究下