亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mainform.cs

?? C.net寫的影院售票系統(tǒng)
?? CS
字號:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;

namespace MyCinema
{
    public partial class MainForm : Form
    {
        Cinema cinema;
        Dictionary<string, Label> labels = new Dictionary<string, Label>();
        int ticket = 0;
        string key = null;
        
        public MainForm()
        {
            InitializeComponent();
        }

        private void MainForm_Load(object sender, EventArgs e)
        {
            this.lblActor.Text = "";
            this.lblDirector.Text = "";
            this.lblMovieName.Text = "";
            this.lblPrice.Text = "";
            this.lblTime.Text = "";
            this.lblType.Text = "";
            this.lblCalcPrice.Text = "";
            this.txtCustomer.Enabled = false;
            this.cmbDisCount.Enabled = false;
            this.rdoNormal.Checked = true;

            cinema = new Cinema();
            InitSeats(7, 5, tpCinema);
            //初始化座位

            cinema.Load();
        }

        /// <summary>
        /// 初始化座位
        /// </summary>
        /// <param name="seatRow">行數</param>
        /// <param name="seatLine">列數</param>
        /// <param name="tb"></param>
        private void InitSeats(int seatRow,int seatLine,TabPage tb)
        {
            Label label;
            Seat seat;
            for (int i = 0; i < seatRow; i++)
            {
                for (int j = 0; j < seatLine; j++)
                {
                    label = new Label();
                    label.BackColor = Color.Yellow;
                    label.AutoSize = false;
                    label.Font = new System.Drawing.Font("宋體", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point,((byte)(134)));
                    label.Location = new System.Drawing.Point(59, 60);
                    label.Name = "lbl" + (j + 1).ToString() + "_" + (i + 1).ToString();
                    label.Size = new System.Drawing.Size(50, 25);
                    //設置座位號
                    label.Text = (j + 1).ToString() + "-" + (i + 1).ToString();
                    label.TextAlign = ContentAlignment.MiddleCenter;
                    label.Location = new Point(60 + (i * 90), 60 + (j * 60));
                    //所有的標簽都綁定到同一事件
                    label.Click += new System.EventHandler(lblSeat_Click);
                    tb.Controls.Add(label);
                    labels.Add(label.Text, label);
                    //實例化一個座位
                    seat = new Seat((j + 1).ToString() + "-" + (i + 1).ToString(), Color.Yellow);
                    //保存的座位集合
                    cinema.Seats.Add(seat.SeatNum, seat);
                }
            }
        }

        private void tsmiMovies_Click(object sender, EventArgs e)
        {
            //判斷放映列表是否為空
            if (cinema.Schedule.Items.Count == 0)
            {
                cinema.Schedule.LoadItems();
            }
            InitTreeView();
        }

        private void tsmiNew_Click(object sender, EventArgs e)
        {
            cinema.Schedule.LoadItems();
            cinema.SoldTickets.Clear();
            InitTreeView();
        } 
        /// <summary>
        /// 初始化TreeView控件
        /// </summary>
        private void InitTreeView()
        {
            tvMovies.BeginUpdate();
            tvMovies.Nodes.Clear();

            string movieName = null;
            TreeNode movieNode = null;
            foreach (ScheduleItem item in cinema.Schedule.Items.Values)
            {
                if (movieName != item.Movie.MovieName)
                {
                    movieNode = new TreeNode(item.Movie.MovieName);
                    tvMovies.Nodes.Add(movieNode);
                }
                TreeNode timeNode = new TreeNode(item.Time);
                movieNode.Nodes.Add(timeNode);
                movieName = item.Movie.MovieName;

            }
            tvMovies.EndUpdate();
        }
        /// <summary>
        /// 選擇一場電影事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void tvMovies_AfterSelect(object sender, TreeViewEventArgs e)
        {
            TreeNode node = tvMovies.SelectedNode;
            if (node == null) return;
            if (node.Level != 1) return;
            key = node.Text;
            //將詳細信息顯示
            this.lblMovieName.Text = cinema.Schedule.Items[key].Movie.MovieName;
            this.lblDirector.Text = cinema.Schedule.Items[key].Movie.Director;
            this.lblActor.Text = cinema.Schedule.Items[key].Movie.Actor;
            this.lblPrice.Text = cinema.Schedule.Items[key].Movie.Price.ToString();
            this.lblTime.Text = cinema.Schedule.Items[key].Time;
            this.lblType.Text = cinema.Schedule.Items[key].Movie.MovieType.ToString();
            this.picMovie.Image = Image.FromFile(cinema.Schedule.Items[key].Movie.Poster);
            this.lblCalcPrice.Text = "";

            //清空座位
            ClearSeat();
            //遍歷該場電影的座位銷售情況
            foreach (Ticket ticket in cinema.SoldTickets)
            {
                foreach (Seat seat in cinema.Seats.Values)
                {
                    if ((ticket.ScheduleItem.Time == key)
                        &&(ticket.Seat.SeatNum == seat.SeatNum))
                    {
                        seat.Color = Color.Red;
                    }
                }
            }
            UpdateSeat();
        }
        
        /// <summary>
        /// 清空座位
        /// </summary>
        private void ClearSeat()
        {
            foreach (Seat seat in cinema.Seats.Values)
            {
                seat.Color = Color.Yellow;
            }
        }
        /// <summary>
        /// 更新座位狀態(tài) 
        /// </summary>
        private void UpdateSeat()
        {
            foreach (string key in cinema.Seats.Keys)
            {
                labels[key].BackColor = cinema.Seats[key].Color;
            }
        }
        /// <summary>
        /// 點擊一個座位
        /// 買票事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void lblSeat_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(this.lblMovieName.Text))
            {
                MessageBox.Show("您還沒選擇電影");
                return;
            }
            ticket++;
            try
            {
                string seatNum = ((Label)sender).Text.ToString();
                string customerName = this.txtCustomer.Text.ToString();
                int discount = 0;
                string type = "";
                if (this.rdoStudent.Checked)
                {
                    type = "student";
                    if (this.cmbDisCount.Text == null)
                    {
                        MessageBox.Show("請輸入折扣數");
                        return;
                    }
                    else
                    {
                        discount = int.Parse(this.cmbDisCount.Text);
                    }
                }
                else if (this.rdoFree.Checked)
                {
                    if (String.IsNullOrEmpty(this.txtCustomer.Text))
                    {
                        MessageBox.Show("請輸入贈票者姓名");
                        return;
                    }
                    else
                    {
                        type = "free";
                    }
                }
                
                           
                //調用工廠創(chuàng)建票
                Ticket newTicket = TicketFactory.CreateTicket(cinema.Schedule.Items[key], cinema.Seats[seatNum],
                    discount, customerName, type);
                if (cinema.Seats[seatNum].Color == Color.Yellow)
                {
                    //打印
                    DialogResult result;
                    result = MessageBox.Show("是否購買?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    if (result == DialogResult.Yes)
                    {
                        cinema.Seats[seatNum].Color = Color.Red;
                        UpdateSeat();
                        cinema.SoldTickets.Add(newTicket);
                        newTicket.CalcPrice();
                        lblCalcPrice.Text = newTicket.Price.ToString();
                        newTicket.Print();
                    }
                    else if (result == DialogResult.No)
                    {
                        return;
                    }
                }
                else
                {
                    MessageBox.Show("已售出.");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        private void rdoVip_CheckedChanged(object sender, EventArgs e)
        {
            this.txtCustomer.Enabled = true;
            this.cmbDisCount.Enabled = false;
            this.cmbDisCount.Text = "";
        }

        private void rdoStudent_CheckedChanged(object sender, EventArgs e)
        {
            this.txtCustomer.Enabled = false;
            this.txtCustomer.Text = "";
            this.cmbDisCount.Enabled = true;
            this.cmbDisCount.Text = "5";
        }

        private void rdoNormal_CheckedChanged(object sender, EventArgs e)
        {
            this.cmbDisCount.Enabled = false;
            this.txtCustomer.Text = "";
            this.txtCustomer.Enabled = false;
            this.cmbDisCount.Text = "";
        }

        private void tsmiExit_Click(object sender, EventArgs e)
        {
            //退出時序列化Cinema對象
            cinema.Save();
            this.Dispose();
        }

        private void tsmiSave_Click(object sender, EventArgs e)
        {
            cinema.Save();
        }

        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            DialogResult close;
            close = MessageBox.Show("是否保存當前銷售狀態(tài)?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
            if (close == DialogResult.Yes)
            {
                cinema.Save();
            }
        }
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美中文一区| 石原莉奈一区二区三区在线观看| 成人av中文字幕| 亚洲综合免费观看高清在线观看| 91麻豆精品国产自产在线| 国产91丝袜在线播放0| 日韩精品1区2区3区| 久久久亚洲精品石原莉奈| 91国产福利在线| 成人三级伦理片| 激情综合一区二区三区| 亚洲一区二区在线免费观看视频| 国产精品色婷婷| 日韩久久久久久| 欧美肥妇free| 欧美男女性生活在线直播观看| av不卡免费电影| 成人av电影在线| 成人av影院在线| 成人黄色小视频在线观看| 久久99九九99精品| 久久精品久久99精品久久| 国产成人99久久亚洲综合精品| 最新国产精品久久精品| 国产精品入口麻豆原神| 中日韩免费视频中文字幕| 久久久青草青青国产亚洲免观| 日韩精品最新网址| 欧美xxx久久| 亚洲国产精品国自产拍av| 国产欧美一区二区精品婷婷| 中文字幕av一区二区三区免费看 | 日本亚洲欧美天堂免费| 久久精品国产网站| 国产精品资源站在线| 国产成人精品亚洲午夜麻豆| 国产乱码精品一区二区三| 国产成人一区二区精品非洲| 高清在线成人网| 色欧美乱欧美15图片| 欧美日韩成人综合在线一区二区| 欧美日韩免费观看一区二区三区| 日韩一区国产二区欧美三区| 欧美r级在线观看| 亚洲视频一区二区在线观看| 日韩经典中文字幕一区| 国产成人在线视频免费播放| 成人免费视频视频| 色综合久久天天综合网| 精品久久久久久久久久久久久久久 | 青青草一区二区三区| 国产高清在线精品| 欧美日韩日日骚| 久久久久久久综合狠狠综合| 一区二区三区四区不卡视频 | 国产成人亚洲综合a∨猫咪| 一道本成人在线| 久久久综合九色合综国产精品| 专区另类欧美日韩| 蜜桃视频在线一区| 9191久久久久久久久久久| 国产精品黄色在线观看| 国产精品一区在线| 久久综合99re88久久爱| 日韩高清一区二区| 欧美日韩午夜在线| 亚洲国产日韩一级| 久久精品国产秦先生| 最新国产成人在线观看| 伦理电影国产精品| 欧美成人伊人久久综合网| 久久国产精品一区二区| 日韩欧美二区三区| 狠狠色丁香九九婷婷综合五月| 日韩免费观看高清完整版| 青青草国产精品97视觉盛宴| 日韩情涩欧美日韩视频| 久久精品国产亚洲高清剧情介绍| 日韩欧美一区二区视频| 精品一区二区在线视频| 91精品国产91久久综合桃花| 喷水一区二区三区| 久久免费美女视频| 99久久精品国产导航| 亚洲精品高清视频在线观看| 欧美亚洲日本国产| 天堂精品中文字幕在线| 日韩精品一区国产麻豆| 国产**成人网毛片九色| 亚洲另类春色国产| 91精品国产综合久久婷婷香蕉| 久久精品免费观看| 综合色中文字幕| 91精品国产一区二区三区蜜臀| 久久国产剧场电影| 亚洲欧美国产三级| 精品国产伦一区二区三区观看方式| 国产精品888| 午夜精品成人在线| 中文字幕高清不卡| 欧美一二三区在线观看| 波多野结衣一区二区三区| 日本视频一区二区| 18成人在线视频| xf在线a精品一区二区视频网站| av一区二区三区| 国产麻豆精品一区二区| 夜夜操天天操亚洲| 18成人在线视频| 26uuu国产电影一区二区| 555www色欧美视频| 欧美视频自拍偷拍| 99久久综合国产精品| 国产成人午夜精品影院观看视频| 亚洲123区在线观看| 亚洲午夜一区二区三区| 亚洲欧洲精品一区二区三区不卡| 日韩欧美综合一区| 欧美成人激情免费网| 欧美系列在线观看| 91国内精品野花午夜精品| 99久久精品免费看| 99久久精品免费看| caoporen国产精品视频| aaa欧美大片| 色天天综合色天天久久| www.亚洲人| 日本福利一区二区| 欧美日韩国产不卡| 91精品国产高清一区二区三区| 日本乱人伦一区| 欧美精选一区二区| 欧美精品一区二区三区久久久| 欧美一区二区视频免费观看| 欧美一区2区视频在线观看| 日韩午夜激情av| 国产精品全国免费观看高清 | 亚洲高清不卡在线观看| 亚洲午夜久久久久久久久电影网| 香蕉乱码成人久久天堂爱免费| 日韩高清在线电影| 成人一区二区三区| 日本道色综合久久| 欧美刺激脚交jootjob| 中文字幕va一区二区三区| 亚洲一区二区免费视频| 久久er精品视频| 91天堂素人约啪| 欧美一区二区三区的| 日本一区二区成人在线| 一区二区在线观看视频在线观看| 日本人妖一区二区| 成人蜜臀av电影| 91精品久久久久久久久99蜜臂| 国产欧美日韩在线看| 五月婷婷久久综合| 99视频精品在线| 一区二区三区毛片| 久久精品国产在热久久| 91免费小视频| 国产精品久久久久久久久图文区 | 亚洲丝袜自拍清纯另类| 激情久久五月天| 91精品国产一区二区人妖| 亚洲蜜桃精久久久久久久| 国产电影一区在线| 欧美xxxxxxxxx| 久久激情五月婷婷| 欧美视频一区二区| 亚洲午夜视频在线观看| 99精品黄色片免费大全| 国产视频一区二区在线| 久久99精品久久久久久动态图| 欧美三级三级三级爽爽爽| 一区二区三区欧美日| 97久久精品人人澡人人爽| 日韩一区有码在线| 色婷婷av一区二区三区大白胸| 一区二区三区在线播| 91麻豆免费视频| 亚洲精品免费播放| 在线视频综合导航| 天天综合网天天综合色| 欧美日韩精品一区二区在线播放| 亚洲午夜精品一区二区三区他趣| 欧美羞羞免费网站| 蜜桃av噜噜一区二区三区小说| 日韩一区二区精品在线观看| 国产一区二区成人久久免费影院 | 亚洲第一在线综合网站| 欧美三级中文字| 免费美女久久99| 国产欧美日韩不卡| 在线欧美日韩国产| 五月天国产精品| 国产亚洲成av人在线观看导航 | 成人精品国产一区二区4080| 亚洲欧美一区二区三区极速播放| 欧美主播一区二区三区美女| 精品一区二区影视|