1、汽车零部件查询系统设计说明书交通与汽车工程学院课程设计说明书课 程 名 称: 计算机应用基础课程设计 课 程 代 码: 6011339 题 目: 汽车零部件查询系统设计 年级/专业/班: 学 生 姓 名: 学 号: 开 始 时 间: 2012 年 4 月 1 日完 成 时 间: 2012 年 4 月 12 日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总 分(100)指导教师签名: 年 月 日摘要11 引言2 方案设计2.汽车零部件查询模拟系统方案设计52.1.1系统功能描述52.1.2系统结构分析52.1.3系统
2、流程分析52.2程序界面和代码设计62.2.1系统工程设计框架62.2.2系统各界面设计及代码设计83 结果分析 33结论 45致 46参考文献 47摘 要随着计算机的普及,计算机高级语言已经运用到生活中的各个方面,本次课程设计使用VB语言作为开发工具,进行了汽车零部件查询系统的程序设计,该程序能实现汽车零部件查询模拟功能,进行汽车零部件的查询,修改,添加等操作,查询结果简便明了,运行界面清晰实用,操作方便,易于实际处理。关键词:网络化 计算机 对策 VB语言 汽车零部件 查询 程序 1 引 言 1.1 问题的提出随着计算机的普及,网络进入大众的家庭。VB一种可视化的、面向对象和采用事件驱动方
3、式的高级程序设计语言,可用于开发Windows环境下的各类应用程序。本次课程设计主要容就是使用VB编制简单、实用的小程序,以巩固我们所学的计算机VB语言知识,提高分析问题和解决问题的能力,锻炼我们独立动手的能力。1.2任务与分析 本课题主要的目的是为了检测步进电机步距角误差,并把误差进行分析计算,最终得到一份误差数据,用误差曲线的方式在坐标上面把误差和步数结果表现出来,方便日后对误差的分析、误差的减少讨论出相应的方案2 设计方案首先根据题目要求设计合理界面,确定哪些控件会用到,要考虑到操作的方便性和美观性。再按题目的功能要求编写对象的事件代码,并其逐一进行调试和修改。2.1系统总体方案的设计
4、2.1.1系统的驱动控制方案设计 根据设计要求,程序要达到的功能如下: (1)、用随机文件建立汽车零部件和管理员的信息档案; (2)、读出汽车零部件的信息,显示在列表框中; (3)、能实现汽车零部件及管理员的信息的查询,修改,添加,删除等操作; (4)、对汽车零部件搜索。2.1.2系统结构分析根据上面对系统功能的描述,构建出系统的总体功能结构图,如图1所示 汽车零部件查询系统对管理员信息的维护对汽车零部件信息的维护对汽车零部件搜索对汽车零部件的查询使用说明 图1 系统的总体功能结构图2.1.3系统流程分析 本系统运行后从欢迎(登录)界面进入主界面。程序的主要工作流程图如图2所示。 用户登录读取
5、用户数据并登录开始失败重试3次操作主界面(1).卡片式(2).列表框式查询零件精确或粗略搜索搜索零件1.添加数据2.删除数据3.修改数据管理员数据1.添加数据2.删除数据3.修改数据零件管理 图2系统主要流程图2.2程序界面和代码设计 2.2.1系统工程设计框架在设计程序之前,应先布局整个工程。本系统可设立一个工程文件,取名汽车零部件查询系统.vbp,该工程中包括1个模块文件,11个窗体文件,如图3所示。图3工程容 模块代码如下: Dim hType qichepj As String * 10ljxh As String * 10sych As String * 10jg As String
6、 * 10fb As String * 10rq As String * 10dw As String * 10End TypeDim cars As qicheType managerbh As String * 10xb As Variantxm As Variantmm As String * 10End TypeDim pers As managerSub save()Kill App.Path + mag.datOpen App.Path + mag.dat For Random As #1For i = 0 To Form4.List1.ListCount - 1pers.bh =
7、 Form4.List1.List(i)pers.xb = Form4.List2.List(i)pers.xm = Form4.List3.List(i)pers.mm = Form4.List4.List(i)Put #1, i + 1, persNext iCloseEnd SubSub xishi(p)Form10.Text5(0) = Form10.Text5(1) = Form10.Text5(2) = Form10.Text5(3) = Form10.Text5(4) = Form10.Text5(5) = Form10.Text5(0) = Form12.List1(0).Li
8、st(p)Form10.Text5(1) = Form12.List1(1).List(p)Form10.Text5(2) = Form12.List1(2).List(p)Form10.Text5(3) = Form12.List1(3).List(p)Form10.Text5(4) = Form12.List1(4).List(p)Form10.Text5(5) = Form12.List1(5).List(p)End Sub2.2.2 系统各界面设计根据功能不同,在本系统中设计了11个窗体。(1) 欢迎界面欢迎界面的主要功能是让用户了解程序软件的用途(2)用户登录界面用户登录界面的功能是
9、让管理员进入系统,防止非工作人员进入。用户登录主界面如图5所示图5登录界面登录页面主要代码如下:Dim pers As managerPrivate Sub Command1_Click() 登录系统按钮Static t As Integerf = FalseIf Text2.Text = Or Text1 = ThenMsgBox 请填写完整的个人信息End IfIf Text2.Text ThenOpen App.Path + mag.dat For Random As #1n = LOF(1) / Len(pers)Do While Not EOF(1)Get #1, , persIf
10、Trim(Text2.Text) = Trim(pers.bh) Thenf = TrueForm3.ShowUnload Form2Exit DoEnd IfLoopCloseIf f = False Thent = t + 1If t 3 ThenMsgBox 用户不存在,请重新输入!, vbOKOnly + vbInformation, 用户名错误ElseMsgBox 重试次数已到,即将退出本系统!, vbOKOnly + vbExclamation, 用户名错误EndExit SubEnd IfEnd IfEnd IfEnd SubPrivate Sub Command2_Click(
11、) 结束按钮EndEnd Sub(3)主界面一如图6所示主界面的功能是展示出系统软件的功能,使用户一目了然。 图6 主界面主要代码如下:Dim cars As qiche 通用定义代码Dim a(5)Private Sub Form_Load() Frame1.Visible = FalseList2.Visible = FalseEnd SubPrivate Sub bz_Click() 查看系统帮助Form9.ShowEnd SubPrivate Sub ss_Click() 搜索零件List2.Visible = TrueFrame1.Visible = TrueList2.Visibl
12、e = Not List2.VisibleList2.ClearEnd SubPrivate Sub Command1_Click() 依照零件信息对零件搜索For i = 0 To 4If Combo1(i).Text = ThenFor j = 0 To Form12.List1(i).ListCount - 1List3(i).AddItem Form12.List1(i).List(j)Next jElset = iCall hunt(t)End IfNext iIf Text1 And Text2 ThenCall hunt2ElseIf Text1 = And Text2 Then
13、 Text1 = 0: Call hunt2ElseIf Text1 And Text2 = Then Text2 = 10 10: Call hunt2ElseFor j = 0 To Form12.List1(5).ListCount - 1List3(5).AddItem Form12.List1(5).List(j)Next jEnd IfFor k = 0 To 5 m = List3(k).ListCount For j = 0 To m If List3(k).List(j) Then a(k) = a(k) + 1 End If Next jNext kMax = a(0)Fo
14、r i = 1 To 5If a(i) Max ThenMax = a(i)End IfNext iFor k = 0 To Val(Max)If List3(0).List(k) And List3(1).List(k) And List3(2).List(k) And List3(3).List(k) And List3(4).List(k) And List3(5).List(k) ThenList2.AddItem List3(0).List(k) & List3(1).List(k) & List3(2).List(k) & List3(3).List(k) & List3(4).L
15、ist(k) & List3(5).List(k)End IfNext kFrame1.Visible = FalseList2.Visible = TrueEnd SubSub hunt(t)For i = 0 To Form12.List1(t).ListCount - 1If Trim(Combo1(t).Text) = Trim(Form12.List1(t).List(i) ThenList3(t).AddItem Form12.List1(t).List(i), iElseList3(t).AddItem , iEnd IfNext iEnd SubSub hunt2()For i
16、 = 0 To List1(5).ListCount - 1If Val(Text1) Val(List1(5).List(i) ThenList3(5).AddItem List1(5).List(i), iElseList3(5).AddItem , iEnd IfNext iEnd SubPrivate Sub Command2_Click() 退出搜索零部件Frame1.Visible = FalseEnd SubPrivate Sub glsj_Click() 打开管理员数据管理功能Form4.ShowEnd SubPrivate Sub bk_Click() 表框式查询零部件For
17、m10.ShowForm10.Frame1.Visible = TrueEnd SubPrivate Sub kp_Click() 卡片式查询零部件Form10.ShowForm10.Frame2.Visible = TrueEnd SubPrivate Sub ljgl_Click() 打开零部件数据管理功能Form12.ShowEnd SubPrivate Sub tc_Click() 退出系统EndEnd Sub(4)主界面二如图7所示 图7 主界面主要代码如下:1卡片式零件查询:Dim q(1).查看上一个零件的代码如下:Private Sub Command1_Click()Stat
18、ic q As IntegerIf q = -1 Then q = List2.ListCount - 1p = Val(List2.List(q)Call xishi(p)q = q - 1End Sub(2)查看下一个零件代码如下:Private Sub Command2_Click()Static q As IntegerIf q List2.ListCount - 1 Then q = 0p = Val(List2.List(q)Call xishi(p)q = q + 1Command1.Enabled = TrueEnd Sub(3)退出卡片式查询代码如下:Private Sub
19、Command3_Click()Form3.ShowUnload MeEnd Sub(4)查看第一个零件代码如下:Private Sub Command4_Click()p = Val(List2.List(0)Call xishi(p)End Sub(5)查看最后一个零件代码如下:Private Sub Command5_Click()p = Val(List2.List(List2.ListCount - 1)Call xishi(p)End Sub(6)卡片式配件框发生改变代码如下:Private Sub Text3_Change()List2.ClearFor i = 0 To For
20、m12.List1(0).ListCount - 1If Text3 And Text4 = ThenIf Trim(Text3) = Trim(Form12.List1(0).List(i) ThenList2.AddItem iEnd IfEnd IfIf Text3 And Text4 ThenIf Trim(Form12.List1(0).List(i) = Trim(Text3) And Trim(Form12.List1(1).List(i) = Trim(Text4) ThenList2.AddItem iEnd IfEnd IfNext iIf List2.ListCount
21、0 ThenList2.ListIndex = 0p = Val(List2.Text)Call xishi(p)ElseText5(0) = Text5(1) = Text5(2) = Text5(3) = Text5(4) = Text5(5) = End IfIf List2.ListCount 1 Then Command2.Enabled = TrueEnd Sub(7)卡片式零件型号框发生改变代码如下:Private Sub Text4_Change()List2.ClearFor i = 0 To Form12.List1(0).ListCount - 1If Text4 And
22、 Text3 = ThenIf Trim(Text4) = Trim(Form12.List1(1).List(i) ThenList2.AddItem iEnd IfEnd IfIf Text3 And Text4 ThenIf Trim(Form12.List1(0).List(i) = Trim(Text3) And Trim(Form12.List1(1).List(i) = Trim(Text4) ThenList2.AddItem iEnd IfEnd IfNext iIf List2.ListCount 0 ThenList2.ListIndex = 0p = Val(List2
23、.Text)Call xishi(p)ElseText5(0) = Text5(1) = Text5(2) = Text5(3) = Text5(4) = Text5(5) = End IfIf List2.ListCount 1 Then Command2.Enabled = TrueEnd Sub2.列表框式零件查询: (1)列表框式配件框发生改变代码如下:Private Sub Text1_Change()List1.ClearList1.AddItem 配件 & & & 零件型号 & & & 适用车型 & & & & & 发布日期 & & & & 单位 & & & & & & 价格Fo
24、r i = 0 To Form12.List1(0).ListCount - 1If Text1 And Text2 = ThenIf Trim(Form12.List1(0).List(i) = Trim(Text1) ThenList1.AddItem Form12.List1(0).List(i) & Form12.List1(1).List(i) & Form12.List1(2).List(i) & Form12.List1(3).List(i) & Form12.List1(4).List(i) & Form12.List1(5).List(i)End IfEnd IfIf Tex
25、t1 And Text2 ThenIf Trim(Form12.List1(0).List(i) = Trim(Text1) And Trim(Form12.List1(1).List(i) = Trim(Text2) ThenList1.AddItem Form12.List1(0).List(i) & Form12.List1(1).List(i) & Form12.List1(2).List(i) & Form12.List1(3).List(i) & Form12.List1(4).List(i) & Form12.List1(5).List(i)End IfEnd IfNext iE
26、nd Sub(2)列表框式零件型号框发生改变代码如下:Private Sub Text2_Change()List1.ClearList1.AddItem 配件 & & & 零件型号 & & & 适用车型 & & & & & 发布日期 & & & & 单位 & & & & & & 价格For i = 0 To Form12.List1(0).ListCount - 1If Text1 = And Text2 ThenIf Trim(Form12.List1(1).List(i) = Trim(Text2) ThenList1.AddItem Form12.List1(0).List(i) &
27、Form12.List1(1).List(i) & Form12.List1(2).List(i) & Form12.List1(3).List(i) & Form12.List1(4).List(i) & Form12.List1(5).List(i)End IfEnd IfIf Text1 And Text2 ThenIf Trim(Form12.List1(0).List(i) = Trim(Text1) And Trim(Form12.List1(1).List(i) = Trim(Text2) ThenList1.AddItem Form12.List1(0).List(i) & Form12.List1(1).List(i) & Form12.List1(2).List(i) & Form12.List1(3).List(i) & Form12.List1(4).List(i) & Form12.List1(5).List(i)End IfEnd IfNext iEnd Sub(5)主界面三如图8所示 图8 主界面 主要代码如下
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1