《2022年2022年航班与订票管理系统面向对象课程设计报告 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年航班与订票管理系统面向对象课程设计报告 .pdf(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、摘要:虽着城市生活节奏的加快,飞机已经成为人们使用越来越频繁的交通工具,随之而来的问题是, 如何能让旅客最快、 最便捷的订到机票。 这就需要一个合适的订票系统来处理航班、机票、旅客等信息,方便售票人员查询,插入,删除各种信息。本系统就是利用面向对象visual C+环境中 MFC 开发一个民航售票管理系统,能方便快捷的运用在民航服务中。本系统是根据售票业务基本流程进行的。在航班订票系统中,需要满足一些基本信息:乘客乘坐航班的起点、终点、日期和预订座位等基本信息, 自动显示乘客需要的航班是否存在,通过数据库的利用满足一些必要的查询服务。关键词: 面向对象;民航售票管理系统;MFC;数据库名师资料
2、总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 14 页 - - - - - - - - - 目 录1 课题综述 . 11. 1 课题来源及意义. 11. 2 预期的目标 . 11. 3 面对的问题 . 12 系统分析 . 12. 1 涉及的知识基础. 12. 2 功能模块框图. 32. 3 总体方案 . 33 系统设计 . 43. 1 数据库设计 . 43. 2 制作一个系统封面位图. 53. 3 创建应用程序框架. 63. 4 创建乘客订购票管理对话框. 63. 5 制作航班
3、时刻查询对话框. 63. 6 制作航班信息处理对话框. 74 代码编写 . 75 程序调试 . 85. 1 程序运行 . 8总 结 . 11 参考文献 . 12 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告1 1 课题综述1.1 课题来源及意义随着人类科技的发展进步和生活水平的不断提高,使得飞机在人们的日常中扮演了更加平凡的角色。 一般情况下,人们订票是通过电话订票或者是现场订购。但是随着计算机
4、发展, 尤其是计算机网络的发展, 人们对于订票又有了新的需求:网上定票。 同时,对于航班订票系统的需求也应运而生。该系统能满足乘客的订票、查询等等一系列需求。乘客只需要点点鼠标,即方便也节省时间,真正意义上的方便了乘客。1.2 预期的目标利用面向对象 visual C+环境中 MFC 开发一个民航售票管理系统,能完成以下功能:乘客乘坐航班的起点、终点、日期和预订座位等基本信息,自动显示乘客需要的航班是否存在,通过数据库的利用满足一些必要的查询服务。1.3 面对的问题开发本系统的所面对的最大问题就是将程序的面向对象化,以及运用MFC进行开发。 面向对象具有抽象性, 这对于思维的要求就比较高,程序
5、制作起来难度大。并且,系统各个板块的相互联系也是一个比较难的问题。关于MFC,就是关于控件跟代码的结合问题。 这些就要求我们对于所学知识的掌握要到位。对于一些抽象思维能理解,并利用这些思维进行编程。2 系统分析2.1 涉及的知识基础在本次程设计中,用的是面向对象的程序设计思想。主要用到的知识有类、函数、 MFC、成员函数、数据库的链接等等。2.1.1 函数的应用类外实现成员函数的形式如下:返回值类型类名:成员函数名(形式参数表) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页
6、,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告2 函数体 构造函数是类的一个特殊成员函数,它的函数名与类名相同, 可以有任意类型的参数, 但不能具有返回类型。 当创建一个新对象时, 编译器会自动调用构造函数。声明一个构造函数的语法格式如下:public:类名(参数表);2.1.2 数据库的访问ADO 访问数据库: 主要是使用 ADO 的各种对象进行访问, 它易使用、速度快、内 支出少,其大好处是在 Internet 上访问数据库的高效性。因为ADO 的关键的 Internet 中使用了少的网络流量,并且在客户端和数据库服务端使用了少的层数。可以说,ADO 为桌
7、面或 Internet 上的数据库访问提供了一种轻量级的高性能接口。ActiveX控件访问: ActiveX 控件是一种可重用的软件组件,通过使用ActiveX 控件,可以很快地在网址、台式应用程序、以及开发工具中加入特殊的功能。 ActiveX 控件过去被称做OLE 控件,其开发基于组件对象模型(COM,Component Object Model),它嵌入到对话框或其他的ActiveX 控件容器。使用ActiveX 控件的应用程序可以通过该控件所包含的一系列的属性和方法(合起来称做接口)来操作该控件的行为。 ActiveX 控件并不仅仅限于与用户的可视交互,它还可以用于其他用途,如访问数据
8、库、监视数据等。2.1.3 类的应用根类: CObject 类。CObject 类是 MFC 的抽象基类,实际上是MFC 中大多数类及用户自定义子类的根类,其中包括许多公共操作。 这些操作包括: 对象的建立和删除、对象诊断输出、运行时信息等。图 2-1 类的结构名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告3 显示主窗口:1 订票2 飞机时刻表查询3 航班信息查询开始填写窗口中的订票链接数据库,调
9、用航链接数据库,调用航图 2-2 功能模块图应用程序体系结构类: 这些类用于构造应用程序的基本结构,提供多数应用程序共用的功能, 实现了编写程序的任务, 即填充框架, 添加应用程序专用的功能。利用这些类可以简化应用程序的开发过程。2.1.4 对话框的应用所谓对话框( Dialog)实际上也是一个窗口,这是一种特殊的窗口,主要功能是输出信息、接收用户输入。对话框类:从 CDialog 类派生的对话框类提供编程接口,用来管理与对话框模板相关联的对话框。 CDialog 类的许多成员函数可供程序员调用。由于对话框是一种窗口,因此相应的对话框类必须与一个Windows 窗口相联系,而对话框资源模板就是
10、用于创建这个Windows 窗口及其包含在其中的控件。2.2 功能模块框图2.3 总体方案根据乘客订票的需要,将本系统分为三大块:订票部分,飞机时刻表查询,航班信息查询。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告4 3 系统设计本系统按照:数据库设计 ,制作一个系统封面位图,创建应用程序框架,创建乘客订票管理对话框, 制作航班时刻查询对话框, 制作航班信息以及制作航班信息处理对话框的顺序进行。
11、下面就从这几个方面进行阐述。3. 1 数据库设计定义一个数据库文件“航班与订票管理系统”,同时创建一个数据表结构,包括三个部分:乘客数据表,飞行时刻表,航班信息。表一命名为乘客数据表,表二命名为飞行时刻表, 表三命名为飞行时刻表。 其中三个表的参数见下面的三个表。表 3-1 乘客数据表字段名称字段类型字段大小必须填写航班号文本50 是购订票人文本20 是身份证号数字默认是发出城市文本50 是到达城市文本50 是日期日期 /时间默认是起飞时间日期 /时间默认是到达时间日期 /时间默认是座位等级文本4 是表 3-2 飞行时刻表字段名称字段类型字段大小索引必须填写航班号文本50 关键、唯一是发出城市
12、文本50 是到达城市文本50 是起飞时间日期/时间默认是到达时间日期/时间默认是名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告5 表 3-3 航班信息表字段名称字段类型字段类型索引必须填写航班号文本50 关键、唯一是购订票人文本20 是身份证号数字默认是发出城市文本50 是到达城市文本50 是日期日期 /时间默认是起飞时间日期 /时间默认是是到达时间日期 /时间默认是座位等级文本4 是剩余座位数字
13、默认是座位总数数字默认是票价数字默认是3. 2制作一个系统封面位图系统封面图的制作:在 Project选项中选择 Add to project, 再选择 Components and Controls, 然后选择 Visual C+ Components , 继续选择里面的 Splash Screen ,后单击 Insert。之后出现一个 Splash画面,内容实际就是一个位图文件的调用。图 3-1 Splash 航班登陆界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共
14、 14 页 - - - - - - - - - 面向对象程序设计课程设计报告6 3. 3 创建应用程序框架基本框架制作过程如下:启动VC+单击“ File|New, ”菜单项,在工程对话框中选择 MFCAppWizard(EXE) ,输入工程名为“航班与订票管理系统”并选择 Win32 平台类型,单击“ OK”,进入文档类型设置对话框,选择“Single document ”,单击“Next”,选择“Datebase view with file support”,再单击“Date Source ” , 之后进入 Datebase Options界面。选择“OLE DB” , 单击“Selec
15、t OLE DB Date Source”,之后选择默认的,再单击“下一步”,进入数据连接属性界面。选择“使用连接字符串”,单击“编译”,选择“机器数据源”,选择自己创建好的航班与订票管理系统数据库,单击 “确定”。 然后回到“Datebase Options ”界面,选择“ ODBC”再选择自己创建好的航班与订票管理系统数据库,进入“Select Datebase Tables ” ,把三个数据表都选上, 单击 “完成”, “Next” , “Finish” 。3. 4 创建乘客订购票管理对话框根据下表,在主窗体插入相应得控件。即添加10 个 Static,9 个 Edit,4 个Butto
16、n 按键。然后将 10 个 Static相应的空间的标题改成如下图所示。图 3-1 订票管理对话框3. 5 制作航班时刻查询对话框单击“Insert|Resource Dialog ”菜单,在工程制图选项卡中增加新的对话框,插入相应控件。同时要设置 ADO 及 DBGrid 控件的属性。ADO 属性设置:Control中,选择 Use Connection String ,然后单击 Build,选择对应“飞行时刻表” 数据;Command Type 中选 2-adCmdTable;Keyboard 中的 AllowAddNew,AllowDelete要选中,All 选项中的 DateSourc
17、e中的 IDC ADODC1 要选中。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告7 图 3-2 飞行时刻表3. 6 制作航班信息处理对话框根据下表,单击“ Insert|Resource Dialog”菜单,插入相应得控件。同时要设置 ADO 及 DBGrid 控件的一些属性。设置ADO 的属性,首先 Control 选项中,先选择 Use ConnectionString,然后单击 Buil
18、d,选择对应的“航班信息表” 数据;其次 Command Type 选项中要选 2-adCmdTable;还有就是 Keyboard 选项中的AllowAddNew,AllowDelete都要选中,最后All 选项中的 DateSource中的 IDC ADODC1 要选中。图 3-3 航班信息表4 代码编写按钮代码:void CMyView:OnButton3() CMyDlg1 MyDlg1; MyDlg1.DoModal(); void CMyView:OnButton4() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
19、 名师精心整理 - - - - - - - 第 9 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告8 CMyDlg2 MyDlg2; MyDlg2.DoModal(); void CMyView:OnButton1() CRecordset * pSet=OnGetRecordset(); if(pSet-CanUpdate()&!pSet-IsDeleted() pSet-Edit(); if(!UpdateData() return; pSet-Update(); long m_lNewID=m_pSet-GetMaxID()+1; m_pSet-Add
20、New(); m_pSet-m_hangbanhao=m_lNewID; UpdateData(FALSE); void CMyView:OnButton2() UpdateData(); m_pSet-Update(); m_pSet-Requery(); 5 程序调试5. 1 程序运行点击运行,首先出来的界面就是位图登陆界面。 其停留的时间很短(1-2 秒) ,之后就自动进入航班与订票管理系统的主窗口。图 5-1 登陆界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,
21、共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告9 图 5-2 主窗口单击飞行时刻表, 便会弹出飞行时刻表对话框, 并且能够显示一系列自己原先在数据库里面输入的信息。图 5-3 飞行时刻表单击航班信息表, 弹出航班信息对话框, 同样能够在对话框里面显示相应的数据信息。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告10 图 5-4 航班信息表在主窗口的 9 个 Edi
22、t 框里面相应的添加信息,确认添加,便能够显示添加后的信息。图 5-5 添加信息显示名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告11 总结经过几天的课程设计, 使我对 C+语言有了更进一步的认识和了解。要想学好 C+要重在实践, 要通过不断的上机操作才能更好地学习它。通过此次课程设计,我也发现我的好多不足之处。第一天数据库做的很成功, 大体框架也很清楚, 不过第二天的时候难题就开始出现了,特别
23、值得一提的是控件用错了,ADO 控件应该选用Microsoft ADO Date Control,version6.0,DBGird 的那个控件也该选用Microsoft DateGird Control 6.0。接下来的问题就是数据源的问题, 好多次数据源都没有导入, 经过查阅资料,询问老师,和同学的帮助,最终克服了重重困难,发现问题之所在,顺利解决了这个问题。 通过这次困难, 我知道了面对困难不能惧怕,要用心去寻找解决它的办法,这样完成后自己也特别会有成就感。通过课程设计中的学习, 我深刻认识到到学好计算机要重视实践操作,不仅仅是学习 C+语言,还是其它的语言, 以及其它的计算机方面的知识
24、都要重在实践,所以在以后的学习过程中, 我会更加注视实际动手操作,使自己更好地学好计算机的课程。经过这次的课程设计, 我真的收获颇多, 学到了很多书本上没有的知识,感觉很好。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 14 页 - - - - - - - - - 面向对象程序设计课程设计报告12 参考文献1 沈大林 Access 数据库应用案例教程,中国铁道出版社,200909 2 郑阿奇编Visual C+实用教程(第三版),电子工业出版社,2007.1 3 郑莉,傅仕星编C+面向对象程序设计,清华大学出版社,2003.9 4 徐孝凯 数据结构实验,中央广播电视大学出版社,2001 5 李师贤等译C+精髓,机械工业出版社,2002.8 6 丁爱萍,郝小会孙宏莉 C语言程序设计实例教程(第二版),西安电子科技大学出版社, 2002.3 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 14 页 - - - - - - - - -