影院售票系统V2.0.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
影院售票系统V2.0

巩固的知识点: 泛型集合的使用 XML的读取 TreeView的绑定 使用虚方法实现多态 使用接口技术 使用序列化与反序列化 注意:教员讲解InitSeats()方法具体实现,强调动态绑定单击事件的方法 “SVSE影院”开始营业,需要一个售票系统: 使用XML和TreeView显示影院放映列表 使用泛型集合维护有继承关系的电影票对象 座位数可以在系统中指定 点击座位可购买不同类型的电影票 使用简单工厂模式创建不同类型的电影票 使用多态实现不同类型电影票的价格计算 使用接口实现电影票的打印 使用序列化和反序列化实现销售情况的保存和读取 系统主窗口:MainForm 类关系 父类可以创建普通票 ShowList Movie Name功夫/Name Postergongfu.jpg/Poster Director周星驰/Director Actor周星驰/Actor TypeAction/Type Price60/Price Schedule Item8-00 9-45/Item Item10-00 11-45/Item /Schedule /Movie //省略其它电影... /ShowList 放映列表XML文件 打印的电影票样式 *************************** SVSE影院 --------------------------- 电影名:功夫 时间: 10-00 11-45 座位号:1-1 价格: 60 *************************** *************************** SVSE影院 (赠票) --------------------------- 电影名:蜘蛛人3 时间: 16-00 17-45 座位号:5-6 姓名: 张三 *************************** *************************** SVSE影院 (学生) --------------------------- 电影名:功夫 时间: 10-00 11-45 座位号:4-6 价格: 30 *************************** 几个重要类 Cinema类 座位集合 已售票集合 放映日程 … 放映日程类 放映场次集合 获取放映列表的方法 放映场次类 放映时间 放映的电影 Schedule ScheduleItem 电影类 名称、海报等 电影票类 所在座位 所属场次 … 使用简单工厂创建不同类型的电影票 public static Ticket CreateTicket(ScheduleItem scheduleItem, Seat seat, int discount,string customerName, string type) { Ticket newTicket = null; switch (type) { case student: newTicket = new StudentTicket(scheduleItem, seat, discount); break; case free: newTicket = new FreeTicket(scheduleItem, seat, customerName); break; case : newTicket = new Ticket(scheduleItem, seat); break; } return newTicket; } 返回父类类型 创建不同的子类产品 动态加载座位标签(Label) for (int i = 0; i seatRow; i++) { for (int j = 0; j seatLine; j++) { label = new Label(); //设置Label的各种属性 省略 ,参考示例代码 label.Name = lbl + (j + 1).ToString() + _ + (i + 1).ToString(); label.Size = new System.Drawing.Size(50, 25);

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档