航空公司的在线机票预订系统设计

需积分: 42 60 下载量 117 浏览量 更新于2024-09-02 6 收藏 1.33MB PDF 举报
"这篇课程设计报告详细介绍了机票预订系统的设计与分析,旨在为航空公司提供一个高效、便捷的在线预订平台。系统将连接旅行社、乘客和航空公司,实现机票订购的自动化流程,降低运营成本并提升服务质量。报告涵盖了需求分析、系统设计和评估等多个方面,运用了软件工程中的SAD(Software Analysis and Design,软件分析与设计)理论,包括UML(统一建模语言)的用例视图、类图和时序图等工具,以确保系统的全面性和可行性。" 在这个机票预订系统中,主要的知识点包括: 1. **需求分析**:这是系统开发的第一步,明确了系统的目标是为乘客提供方便的机票预订服务,包括输入乘客信息、安排航班、打印取票通知和账单等功能。用户主要包括旅行社和乘客,系统需处理的数据包括乘客个人信息、旅行时间和目的地等。 2. **数据流程图(DFD)**:用于描绘系统中数据的流动和处理过程,帮助理解数据如何在系统内部流动,是系统设计的重要工具。 3. **用例视图(User Case)**:描述了系统与用户之间的交互,包括乘客和旅行社如何使用系统预订机票,以及系统如何响应这些操作,如输入信息、查询航班、支付和打印票据等。 4. **类图(Class Diagram)设计**:在面向对象设计中,类图用于表示系统中的对象、它们的关系和行为。在这个系统中,可能包括乘客类、航班类、预订类等,每个类都有其属性和方法。 5. **时序图(Sequence Diagram)分析**:展示不同对象间交互的时间顺序,用于描述系统中各组件如何协同工作来完成特定用例。在机票预订系统中,可能涉及乘客、旅行社、系统和航空公司之间的交互序列。 6. **软件工程应用**:报告体现了软件工程的实践,包括需求收集、分析、设计和评估等阶段,遵循了一套完整的开发流程,确保系统的质量和效率。 7. **系统优化**:通过实现在线预订,系统可以减少人工窗口的压力,节省乘客和旅行社的时间,提升航空公司的运营效率和客户满意度。 8. **技术进步的影响**:随着互联网、智能手机和移动支付的普及,系统开发考虑了这些技术的应用,实现了在线支付和电子票务,适应了现代旅行者的需求。 9. **系统评价与改进**:报告最后对系统进行了评价,指出了可能存在的问题和未来的升级方向,以便系统持续优化。 这个机票预订系统的设计报告不仅展示了软件工程的理论应用,还强调了系统对实际业务流程的改善,以及如何通过技术手段提升用户体验和服务效率。

for (var i = 1; i <= 9; i++) { var img_mc:MovieClip = this["tu" + i]; // 添加点击事件监听器 img_mc.onPress = function() { // 创建该图像的副本,并将其设置为可拖动 var target_mc:MovieClip = this.duplicateMovieClip(this._name + "_copy", _root.getNextHighestDepth()); target_mc.startDrag(); target_mc.onPress = function() { this.startDrag(); }; // 在鼠标移动事件处理程序中,将图像的位置设置为鼠标位置 target_mc.onMouseMove = function() { this._x = _root._xmouse; this._y = _root._ymouse; // 检查图像是否与其他图像重叠,并根据需要更新其透明度 for (var j = 1; j <= 9; j++) { var other_mc:MovieClip = _root["tu" + j]; if (target_mc != other_mc && target_mc.hitTest(other_mc)) { target_mc._alpha = 50; return; } } target_mc._alpha = 100; }; // 在鼠标释放事件处理程序中,检查图像是否与其他图像重叠 target_mc.onRelease = target_mc.onReleaseOutside = function () { this.stopDrag(); this.onMouseMove = null; target_mc.onRelease = target_mc.onReleaseOutside = function () { this.stopDrag(); }; // 检查图像是否与其他图像重叠,并根据需要更新其透明度 for (var j = 1; j <= 9; j++) { var other_mc:MovieClip = _root["tu" + j]; if (target_mc != other_mc && target_mc.hitTest(other_mc)) { target_mc._alpha = 50; return; } } // 将图像放置在当前位置,并将其透明度设置为100% target_mc._alpha = 100; target_mc.swapDepths(_root.getNextHighestDepth()); }; }; }在这串代码中 增加一个功能 当我鼠标移动到影视剪辑副本上面的时候 并且按下h键 这个影视剪辑副本 从舞台上删除 要怎么做

2023-05-24 上传

for (var i = 1; i <= 9; i++) { var img_mc:MovieClip = this["tu" + i]; // 添加点击事件监听器 img_mc.onPress = function() { // 创建该图像的副本,并将其设置为可拖动 var target_mc:MovieClip = this.duplicateMovieClip(this._name + "_copy", _root.getNextHighestDepth()); target_mc.startDrag(); target_mc.onPress = function() { this.startDrag(); }; // 在鼠标移动事件处理程序中,将图像的位置设置为鼠标位置 target_mc.onMouseMove = function() { if(Key.isDown(Key.H)) { // 从舞台上删除该剪辑 this.removeMovieClip(); return; this._x = _root._xmouse; this._y = _root._ymouse; } // 检查图像是否与其他图像重叠,并根据需要更新其透明度 for (var j = 1; j <= 9; j++) { var other_mc:MovieClip = _root["tu" + j]; if (target_mc != other_mc && target_mc.hitTest(other_mc)) { target_mc._alpha = 50; return; } } target_mc._alpha = 100; }; // 在鼠标释放事件处理程序中,检查图像是否与其他图像重叠 target_mc.onRelease = target_mc.onReleaseOutside = function () { this.stopDrag(); this.onMouseMove = null; target_mc.onRelease = target_mc.onReleaseOutside = function () { this.stopDrag(); }; // 检查图像是否与其他图像重叠,并根据需要更新其透明度 for (var j = 1; j <= 9; j++) { var other_mc:MovieClip = _root["tu" + j]; if (target_mc != other_mc && target_mc.hitTest(other_mc)) { target_mc._alpha = 50; return; } } // 将图像放置在当前位置,并将其透明度设置为100% target_mc._alpha = 100; target_mc.swapDepths(_root.getNextHighestDepth()); }; }; }运行时提示没有h的属性 要怎么做

2023-05-24 上传