亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#影院售票系統畢業設計(2)

2020-01-24 01:24:12
字體:
來源:轉載
供稿:網友

本文繼續更新,動態繪制控件、票類型的切換以及數據在窗體中的展現。

先從簡單的開始,票類型的切換。

分析:

  1.當點擊普通票時 學生折扣和贈送者是禁用的

  2.點擊贈票時 啟用贈送者,禁用學生折扣

  3.點擊學生票時 啟用學生折扣,禁用贈送者

學生折扣ComboBox下拉框可以選擇折扣,根據折扣實時折扣計算價格到優惠價上。

需要注意的是:
如果沒有選擇ListView的電影場次(也就是時間),選擇贈票和學生票是沒有意義的甚至會引發學生票實時計算時的異常,所以我們要判斷
 if (this.treeView1.SelectedNode == null) return;
因此我們便可以設計三個RadioButton的點擊事件代碼

 private void rdoGiveTicket_CheckedChanged(object sender, EventArgs e) { if (this.treeView1.SelectedNode == null) return; this.lblOriginalPrice.Text = "0"; this.cboDiscount.Enabled = false; this.txtGiver.Enabled = true; }
private void rdoStuTicket_CheckedChanged(object sender, EventArgs e) { if (this.treeView1.SelectedNode == null) return; this.cboDiscount.Enabled = true; this.txtGiver.Enabled = false; }
 private void rdoNormal_CheckedChanged(object sender, EventArgs e) { this.cboDiscount.Enabled = false; this.txtGiver.Enabled = false; if (!GetKey()) return; //更新原價,因為點擊贈票時價格為0了 this.lblOriginalPrice.Text = cinema.Schedule.Items[key].Movie.Price.ToString(); }

為了美觀也可以調用ClearContent()方法清空一下可能殘留的信息

private void ClearContent() { //點擊時間(場次)時切換回普通票 并清空可能殘留的信息 txtGiver.Text = ""; cboDiscount.Text = ""; }

由于普通票切換回來的時候需要刷新價格,所以要獲取價格;cinema電影院對象是一個全局對象(可以看上一篇的類),key是一個全局的變量,存儲的是選中場次的時間,用來做放映場次的Key。GetKey()方法是獲取選中場次的時間并返回布爾值,看代碼實例
 

 public bool GetKey() { //選中節點 TreeNode node = this.treeView1.SelectedNode; //如果沒有選擇節點=》結束 if (node == null) return false; //如果選中節點不是場次(時間)=》結束 if (node.Level != 1) return false; //獲取時間作為key key = node.Text; if (key != "" && key != null) return true; return false; }

然后就是將XML中的數據綁定TreeView并在選擇TreeView的時間節點是將影片信息展現在窗體中

之前在搭建類的時候用到 Schedule 放映計劃類有一個方法LoadItems()就是將XML信息解析并添加到放映計劃集合中

提取出InitTreeView()方便更新時調用cinema.Schedule.LoadItems();放到窗體的加載事件或初始化中
 

 private void InitTreeView() { this.treeView1.Nodes.Clear(); string movieName = ""; TreeNode tn = null; foreach (ScheduleItem item in cinema.Schedule.Items.Values) {  //如果不存在此電影節點,創建電影節點  if (item.Movie.MovieName != movieName)  {  tn = new TreeNode(item.Movie.MovieName);  tn.Tag = item.Movie;  this.treeView1.Nodes.Add(tn);  }  //增加場次時間節點  TreeNode time = new TreeNode(item.Time);  tn.Nodes.Add(time);  //獲取當前場次的電影名字,重新遍歷  movieName = item.Movie.MovieName; } //展開所有的節點 this.treeView1.ExpandAll(); }

接下來就是選中場次節點時將電影的詳細信息展現在窗體中

 private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { //清空殘留信息 ClearContent(); rdoNormal.Checked = true; //獲取key if (!GetKey()) return; lblName.Text = cinema.Schedule.Items[key].Movie.MovieName; lblDate.Text = key; lblType.Text = cinema.Schedule.Items[key].Movie.MovieType.ToString(); lblOriginalPrice.Text = cinema.Schedule.Items[key].Movie.Price.ToString(); lblMainAct.Text = cinema.Schedule.Items[key].Movie.Actor; lblDirect.Text = cinema.Schedule.Items[key].Movie.Director; this.pictureBox1.Image = Image.FromFile(cinema.Schedule.Items[key].Movie.Poster); this.lblPreferentialPrice.Text = ""; }

最后是將座位信息以label標簽的形式動態繪制到窗體里,這里也是最難的地方,參考了一下書 

private void InitialSeat() { int seatRow = 7; int seatLine = 5; for (int i = 0; i < seatRow; i++)//列 {  for (int j = 0; j < seatLine; j++)//行  {  label = new Label();  //設置背景顏色  label.BackColor = Color.Yellow;  //設置字體 字體,大小,指定應用到文本的字形信息為普通文本,指定給定數據的度量單位,新字體的GDI字符集  label.Font = new System.Drawing.Font("宋體", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));  //取消自動尺寸方便我們設置尺寸  label.AutoSize = false;  //指定label的寬和高  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 * 100), 60 + (j * 60));  //所有的標簽綁定到同一事件,lblSeat_Click是我們手動寫的事件  label.Click += new System.EventHandler(lblSeat_Click);  //tb是TabPage  tb.Controls.Add(label);  //加入到全局的labels集合中  labels.Add(label.Text, label);  //實例化一個座位Seat構造函數的參數為座位號及顏色  seat = new Seat((j + 1).ToString() + "-" + (i + 1).ToString(), Color.Yellow);  cinema.Seats.Add(seat.SeatNum, seat);  } }

之后文章將會繼續更新:購票、座位顏色狀態的改變及場次座位狀態的顯示,希望大家繼續關注。

以上就是本文的全部內容,希望大家喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美专区中文字幕| 亚洲精品在线91| 国产日韩欧美一二三区| 欧美大胆在线视频| 亚洲精品av在线播放| 亚洲精品国产综合区久久久久久久| 亚洲国产成人在线视频| 国产丝袜一区视频在线观看| 日韩欧美精品免费在线| 亚洲精品国产精品国产自| 久久久久亚洲精品国产| 欧美成人免费大片| 久久影视免费观看| 亚洲成人在线网| 欧美天天综合色影久久精品| 久久久亚洲影院你懂的| 亚洲美女中文字幕| 成人激情黄色网| 日本a级片电影一区二区| 91香蕉嫩草神马影院在线观看| 久久97精品久久久久久久不卡| 91精品国产乱码久久久久久蜜臀| 欧美电影电视剧在线观看| 欧美另类高清videos| 久久久久久这里只有精品| 国产一区二区三区在线播放免费观看| 一区国产精品视频| 成人午夜在线观看| 欧美黄网免费在线观看| 国模视频一区二区三区| 日韩成人在线视频| 日韩av高清不卡| 久久琪琪电影院| 一级做a爰片久久毛片美女图片| 久久亚洲精品国产亚洲老地址| 国产在线视频不卡| 欧美精品久久久久久久久| 国产亚洲一区二区在线| 美女啪啪无遮挡免费久久网站| 欧美激情二区三区| 亚洲天堂av网| 欧美性猛交xxxx乱大交| 日韩一区二区精品视频| 久久精视频免费在线久久完整在线看| 国产亚洲欧美另类中文| 亚洲第一免费网站| 国产精品成人免费电影| 久久久久久国产精品美女| y97精品国产97久久久久久| 色婷婷综合久久久久中文字幕1| 少妇av一区二区三区| 亚洲精品日韩激情在线电影| 久久久久国产精品一区| 美女av一区二区三区| 亚洲护士老师的毛茸茸最新章节| 欧美精品在线第一页| 欧美国产精品日韩| 久久久99免费视频| 日本欧美中文字幕| 在线观看欧美成人| 国产精品美乳在线观看| 中文字幕在线观看亚洲| 夜夜嗨av色一区二区不卡| 日韩电影大全免费观看2023年上| 欧美乱大交xxxxx另类电影| 亚洲男人的天堂在线| 国产亚洲精品91在线| 一二美女精品欧洲| 欧美大码xxxx| 欧美性猛xxx| www日韩中文字幕在线看| 欧美激情国产日韩精品一区18| 亚洲成人精品久久| 亚洲一区亚洲二区亚洲三区| 日韩精品在线免费播放| 色综合天天狠天天透天天伊人| 亚洲精品www| 日韩精品一二三四区| 国产精品欧美日韩久久| 日韩经典第一页| 久久综合九色九九| 久久露脸国产精品| 亚洲精品乱码久久久久久金桔影视| 久久久久久久久国产| 亚洲激情中文字幕| 亚洲一二三在线| 欧美大尺度在线观看| 国产欧美久久久久久| 69视频在线免费观看| 国产精品欧美日韩久久| 欧美日韩成人黄色| xxx成人少妇69| 成人免费视频网址| 亚洲人午夜精品| 欧美国产日韩一区二区| 98精品国产高清在线xxxx天堂| 亚洲国产天堂网精品网站| 日韩免费电影在线观看| 伊人久久久久久久久久| 欧美国产高跟鞋裸体秀xxxhd| 亚洲欧美日韩国产成人| 日日噜噜噜夜夜爽亚洲精品| 91在线观看免费观看| 色综合天天综合网国产成人网| 国产精品99久久久久久www| 久久精品人人爽| 国产美女精品视频免费观看| 日韩欧美国产免费播放| 亚洲欧美一区二区三区在线| 国产精品久久久久久久久久尿| 国产原创欧美精品| 亚洲天堂成人在线视频| 日韩中文字幕在线观看| 亚洲精品98久久久久久中文字幕| 亚洲色图激情小说| 欧洲日韩成人av| 久久91精品国产91久久跳| 91国产精品91| 日韩精品在线免费播放| 97免费在线视频| 亚洲精选中文字幕| 国产在线久久久| 亚洲大胆人体视频| 欧美成人性生活| 日韩av手机在线看| 欧美日韩国产区| 久久国产精品99国产精| 欧美老女人xx| 国产一区二区免费| 国产99久久精品一区二区永久免费| 国产精品美女免费看| 91亚洲国产成人久久精品网站| 亚洲一区国产精品| 91精品国产免费久久久久久| 久久久久久久久久久成人| 国产精品久久久久久久久| 91日韩在线视频| 成人高清视频观看www| 亚洲国产精品久久精品怡红院| 欧美亚洲成人xxx| 久久精品国产欧美亚洲人人爽| 国产综合久久久久久| 欧美国产日韩免费| 日韩av免费在线| 日韩在线欧美在线| 亚洲激情 国产| 亚洲第一av网站| 亚洲精品99999| 成人久久久久久| 中文字幕亚洲一区二区三区| 日韩三级影视基地| 欧美日韩视频在线| 欧美精品在线免费播放| 日韩性xxxx爱| 黑人巨大精品欧美一区二区免费| 欧美一级免费看| 国产欧美一区二区三区久久| 深夜福利国产精品| 国产欧美一区二区| 国产成人亚洲综合| 91久久久久久久久久| 国产亚洲人成a一在线v站| 亚洲精品www| 97视频在线观看亚洲|