欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#框架winform實(shí)現(xiàn)簡(jiǎn)單點(diǎn)餐系統(tǒng)

 更新時(shí)間:2021年07月21日 14:21:30   作者:不染-何程龍  
這篇文章主要為大家詳細(xì)介紹了C#框架winform實(shí)現(xiàn)簡(jiǎn)單點(diǎn)餐系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C#框架winform實(shí)現(xiàn)簡(jiǎn)單點(diǎn)餐系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

一、編程思想

1、構(gòu)思界面并進(jìn)行設(shè)計(jì)
2、思考需要用到的控件以及控件需要更改的屬性
3、構(gòu)思將要觸發(fā)的事件以及部分業(yè)務(wù)流程
4、通過(guò)點(diǎn)擊菜品,進(jìn)行添加,并計(jì)算價(jià)格
5、界面的美化以及功能的完善

二、編程核心

1、如何獲取控件中的內(nèi)容
2、點(diǎn)擊按鈕,查找并添加查找的內(nèi)容
3、添加按鈕對(duì)應(yīng)的點(diǎn)擊事件
4、如何一次性取出控件中的內(nèi)容
5、主要用forEach遍歷控件
6、數(shù)據(jù)類型的轉(zhuǎn)換
7、控件Tag屬性的使用
8、如何從菜品價(jià)格中取出單價(jià)
9、顯示菜品與計(jì)算價(jià)格功能的實(shí)現(xiàn)

三、實(shí)現(xiàn)過(guò)程

1、主要用到的控件

  • FlowLayoutPanel:處理其組件的布局并在流局中自動(dòng)排列它們
  • Label:為控件提供運(yùn)行時(shí)信息或說(shuō)明性文字

2、主要設(shè)置的屬性

FlowLayoutPanel:BorderStyle(指示面板是否應(yīng)具有邊框)

Fixed3D:3D立體邊框
FixedSingle:普通邊框
None:無(wú)邊框

FlowLayoutPanel、Label:Tag(與對(duì)象關(guān)聯(lián)的用戶定義數(shù)據(jù))

菜名編號(hào):Tag=index
菜名名:Tag=name
菜名價(jià)格:Tag=money

四、代碼實(shí)現(xiàn)

1、窗體加載事件

private void Form1_Load(object sender, EventArgs e)
        {
            //為窗體添加文本標(biāo)題
            this.Text = "陜西美食點(diǎn)餐";
            //設(shè)置窗體居于頁(yè)面中心顯示
            this.CenterToScreen();
            //遍歷TopDesign中的所有元素
            //Control:控件類型
            //采用forEach循環(huán),進(jìn)行遍歷
            foreach (Control item in TopDesign.Controls)
            {
                //生成按鈕
                //實(shí)例化按鈕
                Button btn = new Button();
                //設(shè)置按鈕部分屬性
                //設(shè)置其大小
                btn.Size = new Size(30,30);
                //設(shè)置其字體
                btn.Font = new Font("楷體", 14F);
                //設(shè)置其背景顏色
                btn.BackColor = Color.White;
                //設(shè)置其自適應(yīng)大小
                btn.AutoSize = true;
                //將子控件統(tǒng)一添加到btn的Tag中
                btn.Tag = item;
                //循環(huán)子控件
                foreach (Control control in item.Controls)
                {
                    //判斷tag為菜品編號(hào)
                    if (control.Tag.ToString()=="index")
                    {
                        //設(shè)置按鈕中的文本為菜品編號(hào)
                        btn.Text = control.Text;
                    }
                }
                //將按鈕添加到MiddleDesign中
                MiddleDesign.Controls.Add(btn);
                //給按鈕添加點(diǎn)擊事件
                btn.Click += Btn_Click;
            }
        }

2、定義全局變量

 //定義一個(gè)記錄總價(jià)格的變量count
        int count = 0;
        //創(chuàng)建一個(gè)字符串接收價(jià)格
        string result = "";

3、按鈕點(diǎn)擊事件

private void Btn_Click(object sender, EventArgs e)
        {
            //將sender(觸發(fā)者參數(shù))綁定給按鈕
            Button click_btn = (Button)sender;
            //將獲取的Tag進(jìn)行類型轉(zhuǎn)換(Control),放入menu控件中
            Control menu = (Control)click_btn.Tag;
            //實(shí)例化label控件,用來(lái)寫入菜名
            Label lab = new Label();
            //設(shè)置Label字體
            lab.Font = new Font("楷體", 14F);
            //遍歷menu中的所有控件
            foreach (Control item in menu.Controls)
            {
                //判斷控件標(biāo)記為name
                if (item.Tag.ToString() == "name")
                {
                    //設(shè)置Label中的文本為菜品名稱
                    lab.Text = item.Text;
                }
                //判斷控件標(biāo)記為money
                if (item.Tag.ToString() == "money")
                {
                    //遍歷item.Text中的所有字符
                    for (int i = 0; i < item.Text.Length; i++)
                    {
                        //創(chuàng)建一個(gè)字符ch,保存遍歷出的每個(gè)字符
                        char ch = item.Text[i];
                        //字符為數(shù)字
                        if (ch >= '0' & ch <= '9')
                        {
                            //將數(shù)字的字符轉(zhuǎn)換成字符串后,賦給result
                            result = ch.ToString();
                        }
                    }
                    //數(shù)據(jù)類型轉(zhuǎn)換,以下兩種方法均可
                    // count += int.Parse(item.Text);
                    count += Convert.ToInt32(result);
                }
                //將Label添加到BottomDesign中
                BottomDesign.Controls.Add(lab);
                //設(shè)置結(jié)算的價(jià)格,并讓其顯示
                jiesuan.Text = count + "元";
            }
        }

五、運(yùn)行結(jié)果

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C# newtonsoft.json中文亂碼問(wèn)號(hào)的解決方案

    C# newtonsoft.json中文亂碼問(wèn)號(hào)的解決方案

    這篇文章主要介紹了C# newtonsoft.json中文亂碼問(wèn)號(hào)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • c# base關(guān)鍵字的具體使用

    c# base關(guān)鍵字的具體使用

    base關(guān)鍵字用于從派生類中訪問(wèn)基類的成員,本文主要介紹了c# base關(guān)鍵字的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03
  • C#開(kāi)發(fā)WinForm根據(jù)條件改變DataGridView行顏色

    C#開(kāi)發(fā)WinForm根據(jù)條件改變DataGridView行顏色

    這篇文章介紹了C#開(kāi)發(fā)WinForm根據(jù)條件改變DataGridView行顏色的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • C#中的IEnumerable接口深入研究

    C#中的IEnumerable接口深入研究

    這篇文章主要介紹了.NET中的IEnumerable接口深入研究,分析出了它的實(shí)現(xiàn)原理和實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2014-07-07
  • c#讀取文件詳談

    c#讀取文件詳談

    你平時(shí)是怎么讀取文件的?使用流讀取。是的沒(méi)錯(cuò),C#給我們提供了非常強(qiáng)大的類庫(kù)(又一次吹捧了.NET一番)
    2013-09-09
  • automation服務(wù)器不能創(chuàng)建對(duì)象 解決方法

    automation服務(wù)器不能創(chuàng)建對(duì)象 解決方法

    本文主要介紹如何解決“automation服務(wù)器不能創(chuàng)建對(duì)象”錯(cuò)誤,從而解決Visual Studio.Net不能正常使用的問(wèn)題,需要的朋友可以參考下。
    2016-06-06
  • 如何用C#獲取計(jì)算機(jī)詳細(xì)的軟件和硬件信息

    如何用C#獲取計(jì)算機(jī)詳細(xì)的軟件和硬件信息

    我們應(yīng)該都知道System.Management提供的類可以用于讀取本地計(jì)算機(jī)設(shè)備的各種數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于如何用C#獲取計(jì)算機(jī)詳細(xì)的軟件和硬件信息的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • C#編程實(shí)現(xiàn)連接ACCESS數(shù)據(jù)庫(kù)實(shí)例詳解

    C#編程實(shí)現(xiàn)連接ACCESS數(shù)據(jù)庫(kù)實(shí)例詳解

    這篇文章主要介紹了C#編程實(shí)現(xiàn)連接ACCESS數(shù)據(jù)庫(kù)的方法,以實(shí)例形式較為詳細(xì)的分析了C#連接access數(shù)據(jù)庫(kù)的具體步驟與相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-11-11
  • C#實(shí)現(xiàn)UI控件輸出日志的方法詳解

    C#實(shí)現(xiàn)UI控件輸出日志的方法詳解

    一般情況下,我們的日志文件是用來(lái)記錄一些關(guān)鍵操作或者異常,并且是后臺(tái)存儲(chǔ),并不對(duì)外開(kāi)放的,但是也有些時(shí)候,需要將一些操作步驟、記錄等直接顯示在窗體上。本文就將利用UI控件輸出日志效果,需要的可以參考一下
    2022-10-10

最新評(píng)論