一、编程思想

  1. 构思界面并进行设计
  2. 思考需要用到的控件以及控件需要更改的属性
  3. 构思将要触发的事件以及部分业务流程
  4. 通过点击菜品,进行添加,并计算价格
  5. 界面的美化以及功能的完善

二、编程核心

  1. 如何获取控件中的内容
  2. 点击按钮,查找并添加查找的内容
  3. 添加按钮对应的点击事件
  4. 如何一次性取出控件中的内容
  5. 主要用forEach遍历控件
  6. 数据类型的转换
  7. 控件Tag属性的使用
  8. 如何从菜品价格中取出单价
  9. 显示菜品与计算价格功能的实现

三、实现过程

1、主要用到的控件

  • FlowLayoutPanel:处理其组件的布局并在流局中自动排列它们
  • Label:为控件提供运行时信息或说明性文字

2、主要设置的属性

  • FlowLayoutPanel:BorderStyle(指示面板是否应具有边框)

Fixed3D:3D立体边框
FixedSingle:普通边框
None:无边框

  • FlowLayoutPanel、Label:Tag(与对象关联的用户定义数据)

菜名编号:Tag=index
菜名名:Tag=name
菜名价格:Tag=money

四、代码实现

  1. 窗体加载事件
private void Form1_Load(object sender, EventArgs e){//为窗体添加文本标题this.Text = "陕西美食点餐";//设置窗体居于页面中心显示this.CenterToScreen();//遍历TopDesign中的所有元素//Control:控件类型//采用forEach循环,进行遍历foreach (Control item in TopDesign.Controls){//生成按钮//实例化按钮Button btn = new Button();//设置按钮部分属性//设置其大小btn.Size = new Size(30,30);//设置其字体btn.Font = new Font("楷体", 14F);//设置其背景颜色btn.BackColor = Color.White;//设置其自适应大小btn.AutoSize = true;//将子控件统一添加到btn的Tag中btn.Tag = item;//循环子控件foreach (Control control in item.Controls){//判断tag为菜品编号if (control.Tag.ToString()=="index"){//设置按钮中的文本为菜品编号btn.Text = control.Text;}}//将按钮添加到MiddleDesign中MiddleDesign.Controls.Add(btn);//给按钮添加点击事件btn.Click += Btn_Click;}}
  1. 定义全局变量
 //定义一个记录总价格的变量countint count = 0;//创建一个字符串接收价格string result = "";
  1. 按钮点击事件
private void Btn_Click(object sender, EventArgs e){//将sender(触发者参数)绑定给按钮Button click_btn = (Button)sender;//将获取的Tag进行类型转换(Control),放入menu控件中Control menu = (Control)click_btn.Tag;//实例化label控件,用来写入菜名Label lab = new Label();//设置Label字体lab.Font = new Font("楷体", 14F);//遍历menu中的所有控件foreach (Control item in menu.Controls){//判断控件标记为nameif (item.Tag.ToString() == "name"){//设置Label中的文本为菜品名称lab.Text = item.Text;}//判断控件标记为moneyif (item.Tag.ToString() == "money"){//遍历item.Text中的所有字符for (int i = 0; i < item.Text.Length; i++){//创建一个字符ch,保存遍历出的每个字符char ch = item.Text[i];//字符为数字if (ch >= '0' & ch <= '9'){//将数字的字符转换成字符串后,赋给resultresult = ch.ToString();}}//数据类型转换,以下两种方法均可// count += int.Parse(item.Text);count += Convert.ToInt32(result);}//将Label添加到BottomDesign中BottomDesign.Controls.Add(lab);//设置结算的价格,并让其显示jiesuan.Text = count + "元";}}

五、运行结果

C#实现简单点餐系统(winform框架)相关推荐

  1. android简单点餐系统_微信点餐和扫码点餐系统能为商家带来什么?

    近几年来,我们去餐厅吃饭的时候可能会发现,很多餐厅都安装扫码点餐系统.和微信点餐系统,相比传统餐饮软件及传统模式,这带来的不只是节省人工.一套系统稳定.功能齐全的微信点餐系统,对餐饮管理而言,能够降低 ...

  2. eclipse点餐系统的框架

    在这里插入代码片@TOC public class Takeout { public static void main(String[] args) { //系统给出几面 welcome(); //点 ...

  3. [课程设计]Scrum 2.5 多鱼点餐系统开发进度(下单一览页面-菜式添加框架设计)

    Scrum 2.5 多鱼点餐系统开发进度  (下单一览页面-菜式添加框架设计) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题 ...

  4. 基于插件架构的简单的Winform框架(下)

    前言 最近事情较多,终于有时间来写完这篇.在上一篇的基础上,本篇文章我们开始着手搭建一个简单的基于插件架构的Winform框架.(其实也就是一个小例子,也是对之前写过的代码的总结) 设计思路 写这个W ...

  5. (附源码)计算机毕业设计SSM基于框架的点餐系统

    (附源码)计算机毕业设计SSM基于框架的点餐系统 项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(Inte ...

  6. 基于python下django框架 实现外卖点餐系统详细设计

    前言介绍(开发目的和意义) 本课题主要目标是设计并能够实现一个基于Python在线外卖点餐系统,管理员通过后台添加菜品,用户浏览器登录,查看菜品.购买.下单等.根据需求,本系统采用的是BS(Brows ...

  7. c语言点餐系统感悟,一个简单C语言点餐系统的学习心得

    首先附上源代码: 1 #include 2 3 voidmain_munu(){4 //打印主菜单 5 char a[6][20]={"菜单","凉菜",&qu ...

  8. Java实现简单的KFC点餐系统(未实现可视化)

    一.实现功能预览 1.正常餐品结算和找零. 2.基本套餐结算和找零. 3.使用优惠劵购买餐品结算和找零. 4.可在一定时间段参与店内活动. 5.模拟打印小票的功能(写到文件中). 餐品有: (1)香辣 ...

  9. 基于springboot框架的校园食堂外卖点餐系统

    (1)解决了学生就餐排队时间长的问题. (2)解决电话订餐拥堵的问题. (3)可通过网络付款,更加方便快捷. (4)可以在网络订餐平台上进行菜品推广. (5)可以在网络订餐平台上进行其它相关产品广告的 ...

  10. 用c语言编写简单的餐厅点餐系统(带后台)

    这应该是比较简单的c语言程序了,因为学校c语言结课结的早,我当时才学到结构体指针,所以我就把我当时能运用的知识点全用在这个程序上了.虽说这个程序对当时的我来说是天花板,但是当我继续学习,我逐渐发现这个 ...

最新文章

  1. 马来西亚拟对打车软件巨头Grab罚款2000万美元
  2. python如何并发上千个get_用greenlet实现Python中的并发
  3. 如何在python中显示电脑中的图片-python如何实现多个图片显示在屏幕上?
  4. 站立会议-2014-04-14
  5. 常发生的异常有哪些, 如何使用异常?
  6. SQL Server插入中文数据出现乱码问题
  7. 大一计算机课实训总结1000字,大一计算机实训报告.doc
  8. el replace 表达式_EL表达式运算符、常用函数详解
  9. CodeForces 931C Laboratory Work 水题,构造
  10. NOIP2007 count 统计数字
  11. ftp 服务器 性能,FTP 服务器性能 测试点
  12. C++:加载图片资源
  13. pythongoogle.probuf.timestamp_gRPC快速入门(一)——Protobuf简介
  14. Validator验证
  15. 40万亿“新基建”来了!程序员的新翻身机会终于也来了!
  16. Windows系统字体和系统应用字体
  17. word 插入图片方式
  18. tp6 使用workerman
  19. python乘积函数_Python中乘法
  20. 人工智能-高等数学之导数篇

热门文章

  1. Error: Cannot find module 'util-deprecate'
  2. 传感器 | 密度测量系列:1.密度测量的基础知识
  3. 反编译so库破解so
  4. 【Java】认识Sring、String的常见操作和StringBuffer 和StringBuilder的区别【字符串详解】
  5. asp毕业设计——基于asp+access的会员管理系统设计与实现(毕业论文+程序源码)——会员管理系统
  6. 5个APP自动化测试辅助定位工具,你用过几个?
  7. 延期年金(deferred annuity)
  8. 质控三张图 gaochao ards 多个表型写成循环
  9. 【修真院WEB小课堂】 angular js中的依赖注入是什么?
  10. 安装、选择-如何制作U盘系统盘以及U盘安装操作系统的方法 -by小雨