c#.net之窗体应用程序实现点餐系统(添加菜品金额+删除菜品金额)

一个简易的点餐系统:
c#.net之窗体应用程序实现点餐系统(添加菜品金额+删除菜品金额)_第1张图片

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Timers;

namespace 点餐系统
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //循环遍历找出flowLayoutPanel1里面的控件
            foreach (Control ctl in flowLayoutPanel1.Controls)
            {
                //实例化button按钮
                Button btn = new Button();
                btn.Tag = ctl;
                btn.Size = new Size(50, 30);
                btn.Font = new Font("",15);
                //循环遍历ctl里面的控件
                foreach (Control  item in ctl.Controls)
            {
                    //如果标签里面带有index
                    if (item.Tag.ToString()=="index")
                    {
                        //把item值赋给btn按钮
                        btn.Text = item.Text;
                    }
              }
                //将按钮添加到flowLayoutPanel7控件里面
                flowLayoutPanel7.Controls.Add(btn);
                //给btn添加点击事件
                btn.Click += Btn_Click;
            }
        }
        //定义一个int变量
        int count = 0;
        private void Btn_Click(object sender, EventArgs e)
        {
            //sender形参 事件的发起者是谁
            Button btn1 = (Button)sender;
            //通过强制转换将button按钮值赋给创建的一个控件
            Control menu = (Control)btn1.Tag;
            Label lab1 = new Label();
            //循环遍历menu(menu就是btn.Tag)
            foreach (Control item in menu.Controls)
            {
                //如果标签里面带有name
                if (item.Tag.ToString()=="name")
            {
                    //实例化的label值=带有name标签的值
                    lab1.Text = item.Text;
                    lab1.Font = new Font("",15) ;
            }
                //如果标签里面带有money
                if (item.Tag.ToString()=="money")
                {
                    //钱数相加
                    count += int.Parse(item.Text);
                    lab1.Tag = item.Text;
                }
            }
            //将实例化label添加到flowLayoutPanel8控件里面
            flowLayoutPanel8.Controls.Add(lab1);
            label18.Text = count+"元";
            lab1.Click += Lab1_Click;
        }

        private void Lab1_Click(object sender, EventArgs e)
        {
            Label lab2 = (Label)sender;
            lab2.Dispose();
            count -= int.Parse(lab2.Tag.ToString());
            label18.Text = count + "元";
        }
    }
}

你可能感兴趣的:(c#.net之窗体应用程序实现点餐系统(添加菜品金额+删除菜品金额))