课程设计报告书vb点菜系统.doc

上传人:文库蛋蛋多 文档编号:2399583 上传时间:2023-02-17 格式:DOC 页数:32 大小:803.50KB
返回 下载 相关 举报
课程设计报告书vb点菜系统.doc_第1页
第1页 / 共32页
课程设计报告书vb点菜系统.doc_第2页
第2页 / 共32页
课程设计报告书vb点菜系统.doc_第3页
第3页 / 共32页
课程设计报告书vb点菜系统.doc_第4页
第4页 / 共32页
课程设计报告书vb点菜系统.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《课程设计报告书vb点菜系统.doc》由会员分享,可在线阅读,更多相关《课程设计报告书vb点菜系统.doc(32页珍藏版)》请在三一办公上搜索。

1、基于.饭店点菜系统设计单 位 分院(系)专 业 学 号 学生姓名 指导教师 完成日期 2011年 8 月 31日摘 要进行点菜是饭店为顾客服务的重要环节之一。传统的点菜环节由于是手工操作,工作量大且容易出错。随着计算机和网络技术的迅速发展,越来越多的饭店、酒店都拥有自己的点菜系统,制作一个方便、快捷的点菜系统能使点菜环节显得更加美观且便于操作。饭店点菜系统技术基础是VB6.0,它有许多优点,例如:“编写一次、随处运行”的特性、方便存取数据的数据库, 使用者只需在窗体上进行操作而不用关心程序代码等等。饭店点菜系统提供给顾客一个用来满足高可用性、高可靠性以及可扩展性的应用需求的软件,给饭店点菜提供

2、了良好的机制、使饭店的工作流程更加顺利。本文基于VB6.0,采用多窗体结构, 设计并实现了顾客在饭店消费时的点菜、结账、抽奖、留言及工作人员管理等多项功能。本文首先介绍了软件设计涉及的相关技术,围绕VB6.0的相关技术进行软件的解释。其次,介绍了饭店点菜系统的总体分析与设计,包括需求分析、功能模块分析和数据库设计。最后,对于主要功能进行了实现,并作了详细描述,主要采用图片与代码结合的方式详细地叙述了系统功能的实现。关键词:文件、数据库 、控件使用、图片载入目录1.选题的意义2.系统功能分析。2.1系统概述。2.2 系统的组成及各模块的功能2 .3系统运行环境。3系统设计3.1 总体结构设计3.

3、2 数据库设计4系统实现4.1 点菜系统的设计与实现4.2 管理系统模块的设计与实现5总结5.1总结5.2 致谢词5.3存在的主要问题参考文献第1章 选题的意义能够使饭店的点菜环节由传统的纯人工操作变为方便、快捷的计算机操作对于减少饭店的人力调配、减少操作流程、提高工作效率具有重要意义,将点菜环节依附于计算机的操作体现了高效、安全、快捷的高科技成果。拥有一个功能完善的点菜系统能够显示出饭店的综合实力,使其相对于其他采用人工点菜的饭店更具竞争力。顾客对系统操作的便捷性、高效性、实用性能够比较容易接受和认可,这对于饭店招揽回头客、打造良好声誉也十分有意义。第2章 系统功能需求分析2.1系统概述本系

4、统针对点菜的具体流程,其主要功能有:菜式浏览功能:能分类浏览饭店的所有菜式、采样及价格;点菜功能:进行点菜操作后能预览点菜结果,并可对其进一步修改;留言板功能:记录顾客的意见和建议,并具有浏览功能;抽奖功能:当顾客的消费达到指定金额时,可分档抽取小奖品增加菜式功能:饭店管理员可以增加菜单中的菜式将其存储在数据库中2.2 系统的组成及各模块的功能错误!未定义书签。本系统主要包括的界面有:运行界面、点菜界面、抽奖界面、留言界面及管理员登录界面,各部分的主要功能有:运行界面:包括进入系统、管理员登录和退出系统;点菜界面:能够分门别类地点菜;抽奖界面:当用户消费达到一定金额时可以参与抽奖;留言界面:将

5、顾客的意见及建议写下来反馈给管理员;管理员登录界面:输入密码后可以查看用户的留言、对菜单进行补充即增加菜式到数据库中。2.3 系统的运行环境1硬件要求在安装VB 6.0时要注意硬盘的剩余空间,下面列出安装VB 6.0时所需的硬件要求。90MHz或更高的微处理器。VGA(640480)以上的监视器。鼠标或其他定点设备(如指令杆、滚动球等)。CD-ROM或DVD-ROM驱动器。32MB以上内存。磁盘空间要求如下。学习版:典型安装48MB,完全安装80MB。专业版:典型安装48MB,完全安装80MB。企业版:典型安装128MB,完全安装147MB。2软件要求VB 6.0可以在多个操作系统下运行,如W

6、indows 98、Windows 2000、Windows 2003、Windows XP、Windows Vista等。VB 6.0需要在Windows 95(或更高版本的操作系统)、Windows NT 3.51(或更高版本的操作系统)上安装。第3章 系统设计3.1 总体结构设计考虑到软件的可操作性和实用性,将系统的总体结构设计如下:运行系统管理系统退出点菜系统留言系统查看留言管理系统密码验证增减菜式菜式浏览点菜系统点菜抽奖系统3.2 数据库设计数据库的设计主要分为需求分析和设计两个步骤。首先对所需数据进行分析,点菜系统里涉及到数据库的是菜单,菜单数据需要的是分类的各种菜的名称、价格、简

7、介及其图片。其次便是数据库的具体设计了,搜索以上所需数据数据并存入数据库中,利用data控件连接数据库。4.1 登入模块的设计与实现运行环境此系统是在Visual Basic集成开发环境中运行的VB具有可视化集成开发环境,以事件驱动、图形用户界面等为特点,在设计时有着其独特的优越性。它采用了可视化的、面向对象的程序设计方法,大大简化了应用系统的开发过程,并提高了系统的模块性和紧凑性。VB中提供了大量的系统开发工具和控件,利用ADO结合SQL技术开发数据库使得操作和管理非常方便,从而使以往费时费力的开发工作变得轻松自如。Visual Basic中的“Visual”一词意为“可视化”的意思,它是指

8、一种开发图形用户界面(GUI)的方法。Visual Basic 是基于Basic的可视化的程序设计语言,是一种由微软公司开发的包含协助开发环境的 事件驱动编程语言。从任何标准来说,VB都是丠界上使用人数最多的语言不仅是盠赞VB的开发者还是抱怨VB的开发者的数颃。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组仠快速建立一个应用程序。Visual Basic之所以受到广大编程爱好者及专业编程人员的青睐,是因为它具有以下一些特点: (1)面向对象 VB采用了面向对象的程

9、序设计思想。它的基本思路是把复杂的程序设计问题分解为一个个能够完成独立功能的相对简单的对象集合,所谓“对象”就是一个可操作的实体,如窗体、窗体中的命令按钮、标签、文本框等。面向对象的编程就好像搭积木一样,程序员可根据程序和界面设计要求,直接在屏幕上“画”出窗口、菜单、按钮等不同类型的对象,并为每个对象设置属性。 (2)事件驱动 在Windows环境下,程序是以事件驱动方式运行的,每个对象都能响应多个不同的事件,每个事件都能驱动一段的代码事件过程,该代码决定了对象的功能。通常称这种机制为事件驱动。事件可由用户的操作触发,也可以由系统或应用程序触发。例如,单击一个命令按钮,就触发了按钮的Click

10、(单击)事件,该事件中的代码就会被执行。若用户未进行任何操作(未触发事件),则程序就处于等待状态。整个应用程序就是由彼此独立的事件过程构成。 (3)软件的集成式开发 VB为编程提供了一个集成开发环境。在这个环境中,编程者可设计界面、编写代码、调试程序,直至把应用程序编译成可在Windows中运行的可执行文件,并为它生成安装程序。VB的集成开发环境为编程者提供了很大的方便。 (4)结构化的程序设计语言 VB具有丰富的数据类型,是一种符合结构化程序设计思想的语言,而且简单易学。此外作为一种程序设计语言,VB还有许多独到之处。 (5)强大的数据库访问功能 VB利用数据控件可以访问多种数据库,VB6.

11、0提供的ADO控件,不但可以用最少的代码实现数据库操作和控制,也可以取代Data控件和RDO控件。 (6)支持对象的链接与嵌入技术 VB的核心是对对象的链接与嵌入(OLE)技术的支持,它是访问所有对象的一种方法。利用OLE技术,能够开发集声音、图像、动画、字处理、Web等于一体的对象的程序。 (7)网络功能 VB6.0提供了DltTML设计工具。利用这种技术可以动态创建和编辑Web页面,使用户在VB中开发多功能的网络应用软件。 (8)多个应用程序向导VB提供了多种向导,如应用程序向导、安装向导、数据对象向导和数据窗4.2 点菜系统模块的设计与实现 进入系统(一起做) Private Sub C

12、ommand1_Click() Form1.Hide Form2.ShowEnd SubPrivate Sub Command2_Click() Form1.Hide Frmdl.ShowEnd SubPrivate Sub Command3_Click() EndEnd SubPrivate Sub Timer1_Timer() If Label1.Left + Label1.Width 0 Then Label1.Move Label1.Left - 50 Else Label1.Left = Form1.ScaleWidth End IfEnd Sub顾客选择留言还是点菜Private

13、Sub Command1_Click() Form2.Hide Frmdc.ShowEnd SubPrivate Sub Command2_Click() Form2.Hide frmly.ShowEnd SubPrivate Sub Command3_Click() Form2.Hide frmly.ShowEnd SubPrivate Sub Command4_Click() Form2.Hide Form1.ShowEnd Sub点击点菜进入点菜(本人做)代码如下此功能需连接数据库。Private Sub Command1_Click() Data1.RecordSource = 点心

14、Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text1.Text)End SubPrivate Sub Command10_Click() Frmdc.Hide Form2.ShowEnd SubPrivate Sub Command11_Click() Image2.Picture = LoadPicture(App.Path & Text1.Text)End SubPrivate Sub Command2_Click() Data1.RecordSource = 凉菜 Dat

15、a1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text1.Text) (此为图片载入方式,为相对路径) End SubPrivate Sub Command3_Click() Data1.RecordSource = 汤 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text1.Text)End SubPrivate Sub Command4_Click() Data1.Re

16、cordSource = 热菜 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text1.Text) End SubPrivate Sub Command5_Click() Data1.RecordSource = 主食 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text1.Text)End SubPrivate Sub Command6_Click() Data1

17、.RecordSource = 茶酒饮品 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text1.Text)End SubPrivate Sub Command7_Click() Dim k As Integer If List1.ListCount = 0 Then MsgBox 您还没有选菜呢!, , 请选菜! End If If Val(Label8.Caption) = 100 Then (当满足此条件自动切换到抽奖系统) Frmdc.Hide frmcj.Show En

18、d IfEnd SubPrivate Sub Command8_Click() Dim sum As Integer List1.AddItem Label4.Caption List2.AddItem Label5.Caption sum = 0 For i = 1 To List2.ListCount sum = sum + Val(List2.List(i - 1) Next i Label8.Caption = sumEnd SubPrivate Sub Command9_Click() If List1.ListIndex -1 Then y = List1.ListIndex Li

19、st1.RemoveItem y List2.RemoveItem y End If sum = 0 For i = 1 To List2.ListCount sum = sum + Val(List2.List(i - 1) Next i Label8.Caption = sumEnd Sub抽奖系统代码如下Private Sub Command1_Click()Dim s As StringCommand1.Visible = TrueTimer1.Enabled = FalseLabel2.Visible = Falses = Val(Text1.Text)If s = 5 ThenLa

20、bel3.Caption = 恭喜您!您获得留念项链一条,请到总服务台兑奖!欢迎您下次光临!Label3.ForeColor = RGB(50, 50, 50)ElseIf s = 10 ThenLabel3.Caption = 恭喜您!您将获得留念戒指一条,请到总服务台兑奖!欢迎您下次光临!Label3.ForeColor = RGB(255, 50, 255)ElseIf s = 30 ThenLabel3.Caption = 恭喜您!您将获得应援棒一枚,请到总服务台兑奖!欢迎您下次光临!Label3.ForeColor = RGB(55, 255, 255)ElseIf s = 90 T

21、henLabel3.Caption = 恭喜您!您将获得会服一件,请到总服务台兑奖!欢迎您下次光临!Label3.ForeColor = RGB(205, 55, 50)ElseLabel3.Caption = 恭喜您!您将获得手机挂件一个,请到总服务台兑奖!欢迎您下次光临!Label3.ForeColor = RGB(25, 25, 25)End IfEnd SubPrivate Sub Command2_Click()Form1.Showfrmcj.HideEnd SubPrivate Sub Timer1_Timer()Timer1.Interval = 100Text1.Text =

22、Int(Rnd * 100 + 1)End SubPrivate Sub Text1_Change() Image2.Picture = LoadPicture(App.Path & Text1.Text)End Sub登录和管理系统 Private Sub Command1_Click() If Text1.Text 2010 Then i = MsgBox(密码错误, vbRetryCancel + vbExclamation, 输入密码) If i 4 Then End Else Text1.Text = Text1.SetFocus End If Else Frmdl.Hide Frm

23、gl.Show End IfEnd SubPrivate Sub Command2_Click() Frmdl.Hide Form1.ShowEnd SubPrivate Sub Form_Load() Text1.PasswordChar = *End Sub窗体切换Private Sub Command1_Click() Frmgl.Hide Frmckly.Show End SubPrivate Sub Command2_Click() Frmgl.Hide Frmzj.ShowEnd SubPrivate Sub Command3_Click() Frmgl.Hide Form1.Sh

24、owEnd Sub增减菜式和查看留言(本人做)Private Sub Command1_Click() Data1.RecordSource = 点心 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text4.Text) End SubPrivate Sub Command10_Click() Command1.Enabled = False 使其他按钮不可用 Command2.Enabled = False Command3.Enabled = False Command4.En

25、abled = False Command5.Enabled = False Command6.Enabled = False Command8.Caption = 修改 Command7.Caption = 添加 Command10.Enabled = False Data1.UpdateControls Data1.Recordset.Bookmark = mbookmarkEnd SubPrivate Sub Command11_Click() Frmzj.Hide Frmgl.ShowEnd SubPrivate Sub Command2_Click() Data1.RecordSou

26、rce = 主食 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text4.Text)End SubPrivate Sub Command3_Click() Data1.RecordSource = 凉菜 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text4.Text)End SubPrivate Sub Command4_Click() Data1.RecordS

27、ource = 热菜 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text4.Text)End SubPrivate Sub Command5_Click() Data1.RecordSource = 汤 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text4.Text)End SubPrivate Sub Command6_Click() Data1.Record

28、Source = 茶酒饮品 Data1.Refresh Data1.Recordset.MoveFirst Image2.Picture = LoadPicture(App.Path & Text4.Text)End SubPrivate Sub Command7_Click() Command1.Enabled = False 使其他按钮不可用 Command2.Enabled = False Command3.Enabled = False Command4.Enabled = False Command5.Enabled = False Command6.Enabled = False

29、If Command7.Caption = 添加 Then Command7.Caption = 确认 mbookmark = Data1.Recordset.Bookmark Data1.Recordset.AddNew Text1.SetFocus Else If Text1.Text = Or Text2.Text = Or Text3.Text = Or Text4.Text = Then MsgBox 字段不能为空 Exit Sub End If Command7.Caption = 添加 Data1.Recordset.Update End If End SubPrivate Su

30、b Command8_Click() Command1.Enabled = False 使其他按钮不可用 Command2.Enabled = False Command3.Enabled = False Command4.Enabled = False Command5.Enabled = False Command6.Enabled = False If Command8.Caption = 修改 Then Command8.Caption = 确认 mbookmark = Data1.Recordset.Bookmark Data1.Recordset.Edit Text1.SetFoc

31、us Else Command8.Caption = 修改 Data1.Recordset.Update End If End SubPrivate Sub Command9_Click() Command1.Enabled = False 使其他按钮不可用 Command2.Enabled = False Command3.Enabled = False Command4.Enabled = False Command5.Enabled = False Command6.Enabled = False Dim m As Integer m = MsgBox(是否删除当前记录?, 4 + 32

32、 + 256, 信息提示) If m = vbYes Then Data1.Recordset.Delete Data1.Recordset.MoveNext If Data1.Recordset.EOF Then Data1.Recordset.MoveLast End If End Sub 此用到了文件的使用Private Sub Command1_Click() Frmckly.Hide Frmgl.ShowEnd SubPrivate Sub Command2_Click() Dim a1 As String Open D:点菜系统liuyan.txt For Input As #1

33、(读取文件中的信息) While Not EOF(1) Line Input #1, a1 List1.AddItem a1 Wend Close #1 End Sub留言Private Sub Timer1_Timer()Label3.FontSize = 12Label3.FontName = 隶书Label3.Caption = TimeEnd SubPrivate Sub Command1_Click()If Text1.Text = ThenMsgBox 留言内容不能为空, 64, 错误ElseMsgBox 发言成功了!, 64, 哈哈End IfText2.Text = Text1

34、.TextText1.Text = Dim a1 As String Open D:点菜系统liuyan.txt For Append As #1(将信息写入文件) a1 = Text2.Text Write #1, a1 Close #1End SubPrivate Sub Command2_Click() Form1.Show frmly.HideEnd Sub5.1存在问题我们曾尝试着利用数据库实现能查出每天的营业总额,每天的销量,但我们经过一次次的努力,没有实现这一功能。毕竟能力有限,但我们会在以后的时间里努力提高自己的知识,完善这一课程设计。5.2心得体会在10天的软件制作过程中,虽然遇到了重重困难,但经过查阅资料和向同学询问都得到了解决。现在完成了任务,虽然付出了很多才得以完成,但感觉真的很不错,因为这劳动成果是我用辛苦换来的,汗水中充满了欢乐。能有这次经历,真的很值得!5.3参考文献:1.Visual Basic 6.0编程案例精解, 张路平,电子工业出版社2.Visual Basic 程序设计 王学军,中国铁道出版社3. MSDN4.Visual Basic+Access数据库项目开发实践,周国民,中国铁道出版社

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号