C#影院售票系统毕业设计(3)

2019-12-30 11:00:28于海丽
这篇文章介绍了C#影院售票系统毕业设计,文章主要内容是关于购票、座位颜色状态的改变及场次座位状态的显示,需要的朋友可以参考下    

前一篇文章《C#影院售票系统毕业设计(2)》中总结了动态绘制控件、票类型的切换以及数据在窗体中的展现。今天继续总结!

本文总结项目中最核心的部分--购票、座位颜色状态的改变及场次座位状态的显示。

分析:

1.在选中时间(场次)后更新出座位状态(label实现),售出的为红色,未售出的显示为黄色。

2.已售出提示已经售出并不进行任何操作,未售出的询问是否购买。

3.根据选择的是普通票、赠票、还是学生票分别创建不同的票对象

  如果选择赠票则需要检测赠送者否填写

  如果选择的是学生票需要检测折扣是否选择

4.获取选中座位的座位号,调用工具类的CreateTicket()方法创建对应选中类型的票,普通票则直接使用Ticket类创建

5.用户选择购买后将座位集合的颜色改成红色;重新使用票类的计算价格方法;将售出的票加入到Cinema类中的SoldTickets集合中;更新座位颜色状态,上代码详解
 

  1. try   { 
  2.   //获取当前被点击座位标签的座位号(Text属性)    string seatNum = ((Label)sender).Text.ToString(); 
  3.   //赠送者名字    string customerName = this.txtGiver.Text.ToString(); 
  4.   //折扣    int discount = 0; 
  5.   //票的类型    string type = ""; 
  6.   //如果学生票是选中的    if (this.rdoStuTicket.Checked) 
  7.   {    type = "StudentTicket"; 
  8.   if (this.cboDiscount.Text == null)    { 
  9.   MessageBox.Show("请输入折扣数!", "提示");    return; 
  10.   }    else 
  11.   {    discount = int.Parse(this.cboDiscount.Text);