谁有兴趣帮忙看一下这个小程序 加QQ群7166214 商谈SEMII——VB作业:机票预订系统 要求和实现第一部分:需求概述“Fly Safe”国际航空公司有数架大型客机飞往世界各地,这些客机每周飞行两次,客机设有头等舱、经济舱和商务舱,公司将这些数据存储在 Flights 数据库中。第二部分:整体设计Flights 数据库中的表包括: 
图 1 :Flights 数据库注释:Reservation 表中的 TicketNo 列上有标识约束。第三部分:实现说明该工程应包括下列菜单: 图 2 :MDI 窗体
 
单击以上每个菜单项时,将启动下列窗体: Flight Details(航班详细信息) 该菜单项将启动 FrmFlightDetails 窗体,窗体界面如下图所示: 图 3 :航班详细信息该窗体包含一个 TreeView 控件和一个 ListView 控件,TreeView 控件显示 Fare 表的 Origin 列和 Destination 列中已有的所有城市,如果选择其中一个城市,ListView 控件中应显示所有出发地或目的地为该城市的航班的详细信息,航班详细信息包括航班号、出发地、目的地、起飞时刻、飞行时间、航班日期 1 和航班日期 2。 Fare Details(票价详细信息)该菜单项将启动 FrmFare 窗体,窗体界面如下图所示: 图 4 :票价详细信息以上窗体允许用户浏览 Fare 表的记录,它基于 ActiveX 控件 UCNavbuttons,该控件的界面如下图所示:  图 5 :UCNavbuttons 控件的界面该控件允许用户浏览数据库中的记录,它有一个方法,可以接受客户端应用程序的查询字符串,然后执行这个查询,检索记录,并允许用户浏览这些记录。 上图中各按钮的功能如下:1)   移至第一条记录2)   移至上一条记录3)    移至下一条记录4)    移至最后一条记录 
 Flightwise Available seats(航班剩余座位)该菜单项将启动 FrmAvailableSeats 窗体,窗体界面如下图所示: 图 6 :航班剩余座位以上窗体显示用户选择的航班的剩余座位详细信息,该窗体基于 ActiveX DLL PrjAvailSeats。该 DLL 有下列方法/属性:
1) FlightNo 属性:存储或返回航班号。
2) DispAvailSeats 方法:将航班号传递给一个存储过程,该存储过程接受航班号作为参数,然后检索该航班的路线、航班日期以及头等舱、经济舱和商务舱的剩余座位等详细信息。 Reservation(订票)该菜单项将启动 FrmReservation 窗体,窗体界面如下图所示:
 图 7 :订票以上窗体允许用户浏览记录,并在数据库中添加记录,窗体中用 ActiveX 控件 UCNavbuttons 浏览记录,“Add”按钮清除屏幕,允许用户在字段中输入数据,“Save”按钮将更新 Reservation 表和 Flight 表,该窗体基于 ActiveX EXE PrjNewReserv。该 ActiveX EXE 有下列方法/属性:
1) TicketNo 属性:存储和返回机票号;
2) PassName 属性:存储和返回乘客姓名;
3) PassAddress 属性:存储和返回乘客地址;
4) PassportNo 属性:存储和返回乘客的护照号;
5) CreditCardNo 属性:存储和返回乘客的信用卡号;
6) FlightNo 属性:存储和返回航班号;
7) FlightDate 属性:存储和返回航班日期;
8) ClassType 属性:存储和返回座位等级;
9) ReservDate 属性:返回系统日期作为订票日期;
10) UpdateReserv 方法:将新记录追加到 Reservation 表中;
11) UpdateFlight 方法:更新 Flight 表,增加相应座位等级的订票数; Exit(退出) 该菜单项允许用户退出应用程序。第四部分:对应的章节内容第二章:使用集合增强界面设计1> 创建一个 MDI 窗体(参见图 2),创建如下所示的菜单结构:Flight Details Fare Details Flightwise Available seats Reservation Exit2> 创建窗体 FrmFlightDetails(参见图 3),在窗体上添加一个 TreeView 控件和一个 ListView 控件,TreeView 控件应显示一个城市列表,这些城市都是 Fare 表中航班的出发地或目的地,运行该窗体时,如果用户选择一个特定的城市,ListView 控件中应显示所有出发地或目的地为该城市的航班列表。第四章:COM 和 ActiveX 控件设计1> 设计一个包含四个命令按钮的 ActiveX 控件(参见图 5),该控件允许用户浏览数据库中的记录,它有一个方法,可以接受客户端应用程序的查询字符串,然后执行这个查询,检索记录,并允许用户浏览这些记录。第五章:ActiveX 组件技术1> 创建一个 ActiveX DLL 工程,创建一个名为 ClsAvailSeats.cls 的类,作为该工程的数据源,该类应包括 ADODB Connection、Recordset 和 Command 对象的创建,用于显示特定航班号的剩余座位,还应包括一个方法,用于接受航班号,并返回该航班的剩余座位,在窗体 FrmAvailableSeats 中使用该 DLL 的引用,请参见图 6,窗体 FrmAvailableSeats 用于显示选定航班号的剩余座位数,使用通过该 DLL 创建的数据源,执行与该窗体相关的所有操作。2> 创建一个 ActiveX EXE 工程,在工程中创建一个名为 ClsNewReserve.cls 的类,其功能包括接受所需的全部详细信息,将记录添加到 Reservation 表中,并更新 Flight 表,该类还应有一个方法,用于增加Reservation 表中的 TicketNo (机票号),在窗体 FrmReservation 中使用该 EXE 的引用,请参见图 7,FrmReservation窗体用于浏览 Reservation 表中的记录,在 Reservation 表中追加记录,并更新 Flight 表,窗体中还使用前面创建的 ActiveX 控件浏览记录。第七章:存储过程和二进制存储1> 在 DLL ClsAvailSeats.dll 中使用存储过程,该存储过程接受航班号作为参数,然后返回该航班号的剩余座位数。