VB实验单据设计

软件开发环境与工具

实验报告

实验三

实验题目:单据设计

指导老师:***

专业班级:计算机科学与技术系**班

姓名:***

2013年11月30日

实验类型验证实验室软件实验室一一、实验题目

完整单据的设计

二、实验目的

1.掌握单据设计的基本流程

2.了解一个单据要实现的基本功能(新增,修改,删除)

3.利用三层架构思想及ADO.NTE技术实现程序要求

三、实验内容

1、设计单据展示页面。

2、利用工具栏添加功能键,实现其相应的功能。

3、能够对单据进行的新增、编辑、保存等等。

四、实验步骤

1、主页的设计代码

Public Class RK_sl

Dim app As New Ku_Apply.Class1

Dim dtset As DataSet

Dim dtset1 As DataSet

Dim dtsetline As DataSet

Dim cRow As DataRow

Dim cRow1 As DataRow

Dim str(100) As String

Dim biaoji As String

Dim jilu As Integer

Dim max As Integer

Private Sub ToolList_ItemClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles ToolList.ItemClicked Select Case e.ClickedItem.Text

Case "增加¨"

Me.BillsName.Enabled = True

Me.StorageID.Enabled = True

Me.CK_Name.Enabled = false

Me.RU_sl.Enabled = True

Me.ZD_Name.Enabled = True

Me.SH_Name.Enabled = False

Me.TextID.Enabled = False

Me.SH_Name.Enabled = False

biaoji = "增加¨"

Case "删除"

biaoji = "删除"

Me.BillsName.Enabled = False

Me.StorageID.Enabled = False

Me.CK_Name.Enabled = False

Me.RU_sl.Enabled = False

Me.SH_Name.Enabled = False

Me.TextID.Enabled = True

Me.SH_Name.Enabled = False Case ("修改")

biaoji = "修改"

Me.BillsName.Enabled = True

Me.StorageID.Enabled = True

Me.CK_Name.Enabled = False

Me.RU_sl.Enabled = True

Me.ZD_Name.Enabled = True

Me.SH_Name.Enabled = False

Me.TextID.Enabled = True

Me.SH_Name.Enabled = False Case "查找"

biaoji = "查找"

Me.BillsName.Enabled = False

Me.StorageID.Enabled = False

Me.CK_Name.Enabled = False

Me.RU_sl.Enabled = False

Me.ZD_Name.Enabled = False

Me.TextID.Enabled = True

Me.SH_Name.Enabled = False Case "审查"

biaoji = "审查"

Me.BillsName.Enabled = False

Me.StorageID.Enabled = False

Me.CK_Name.Enabled = False

Me.RU_sl.Enabled = False

Me.ZD_Name.Enabled = False

Me.SH_Name.Enabled = True

Me.TextID.Enabled = True Case "首页"

Call FirstRow()

Case "上页"

Call PreRow()

Case "下页"

Call NextRow()

Case "末页"

Call EndRow()

End Select

End Sub

Sub FirstRow()

jilu = 1

Me.page(jilu)

End Sub

Sub PreRow()

jilu -= 1

Me.page(jilu)

End Sub

Sub NextRow()

jilu += 1

Me.page(jilu)

End Sub

Sub EndRow()

biaoji = dtset.Tables(2).DefaultView.Count / 5

Me.page(jilu)

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

dtset = app.fill

Dim i As Integer

i = 0

For Each Me.cRow In dtset.Tables(0).Rows

Me.StorageID.Items.Add(cRow(0).ToString)

str(i) = cRow(1).ToString

i += 1

Next

For Each Me.cRow1 In dtset.Tables(1).Rows

Me.BillsName.Items.Add(cRow1(0).ToString & "--" & cRow1(1).ToString) Next

Me.ZD_Date.Text = Date.Today.Year() & "-" & Date.Today.Month() & "-" & Date.Today.Day() & "-" & Date.Now.Hour() & "-" & Date.Now.Minute()

jilu = dtset.Tables(2).DefaultView.Count / 5

max = jilu

Me.page(jilu)

End Sub

Private Sub StorageID_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StorageID.SelectedIndexChanged

Me.CK_Name.Text = str(Me.StorageID.SelectedIndex)

End Sub

Public Function page(ByVal line As Integer)

If line = 1 Then

Me.ToolFirst.Enabled = True

Me.Toolpre.Enabled = False

Me.Toolnext.Enabled = True

Me.Toolend.Enabled = False

ElseIf line = max Then

Me.ToolFirst.Enabled = True

Me.Toolpre.Enabled = True

Me.Toolnext.Enabled = False

Me.Toolend.Enabled = True

Else

Me.ToolFirst.Enabled = True

Me.Toolpre.Enabled = True

Me.Toolnext.Enabled = True

Me.Toolend.Enabled = True

End If

If line > 0 Then

dtsetline = app.Process(line)

Me.DateView.DataSource = dtsetline.Tables(0)

Else

dtsetline = app.Process(1)

Me.DateView.DataSource = dtsetline.Tables(0)

End If

End Function

Private Sub Bk_OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Bk_OK.Click

Select Case biaoji

Case "增加"

If Me.ZD_Name.Text <> "" Then

app.addRK(Me.StorageID.Text, Me.BillsName.Text.Substring(0, 1), Me.ZD_Date.Text, Me.ZD_Name.Text, Me.RU_sl.Text)

MsgBox("操作成功")

Else

MsgBox("请输入必填项")

End If

Case "删除"

If Me.TextID.Text <> "" Then

app.deleteRK(Me.TextID.Text)

MsgBox("操作成功")

Else

MsgBox("请输入必填项")

End If

Case "修改"

If Me.ZD_Name.Text <> "" And Me.TextID.Text <> "" Then

app.updateRK(Me.TextID.Text, Me.StorageID.Text, Me.BillsName.Text.Substring(0, 1), Me.ZD_Date.Text, Me.ZD_Name.Text, Me.RU_sl.Text)

MsgBox("操作成功")

Else

MsgBox("请输入必填项")

End If

Case "查找"

If Me.TextID.Text <> "" Then

dtset1 = app.find(Me.TextID.Text)

Me.StorageID.Text = dtset1.Tables(0).DefaultView.Item(0).Item(1)

Me.BillsName.Text = dtset1.Tables(0).DefaultView.Item(0).Item(2)

Me.ZD_Date.Text = dtset1.Tables(0).DefaultView.Item(0).Item(3)

Me.ZD_Name.Text = dtset1.Tables(0).DefaultView.Item(0).Item(4)

Me.RU_sl.Text = dtset1.Tables(0).DefaultView.Item(0).Item(5)

MsgBox("操作成功")

Else

MsgBox("请输入必填项")

End If

Case "审查"

If Me.SH_Name.Text <> "" And Me.TextID.Text <> "" Then

app.SHR(Me.TextID.Text, Me.SH_Name.Text)

Else

MsgBox("请输入必填项")

End If

End Select

Me.page(app.add()/5)

End Sub

Private Sub DateView_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DateView.CellContentClick End Sub

Private Sub BillsName_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BillsName.SelectedIndexChanged

End Sub

End Class

2、连接数据库

Public Class Class1

Public Function connlink() As SqlClient.SqlCommand

Dim conn As New SqlClient.SqlConnection

Dim cmd As New SqlClient.SqlCommand

conn.ConnectionString = "server=.;uid=sa;pwd=;database=JXCDate"

conn.Open()

cmd.Connection = conn

Return cmd

End Function

Public Function fill() As DataSet

Dim cmd As New SqlClient.SqlCommand

cmd = Me.connlink

Dim adp As New SqlClient.SqlDataAdapter

Dim ds As New Data.DataSet

Dim adp1 As New SqlClient.SqlDataAdapter

Dim ds1 As New Data.DataSet

Dim adp2 As New SqlClient.SqlDataAdapter

Dim ds2 As New Data.DataSet

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "select * from CK_Lib"

adp.SelectCommand = cmd

adp.Fill(ds, "temp")

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "select * from CP_db"

adp1.SelectCommand = cmd

adp1.Fill(ds, "date")

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "select * from KP_Lib"

adp2.SelectCommand = cmd

adp2.Fill(ds, "date1")

Return ds

End Function

Public Function addRK(ByVal id As String, ByVal tab As String, ByVal cd As String, ByVal zd As String, ByVal sl As String)

Dim cmd As New SqlClient.SqlCommand

Dim str As String

str = Me.add

cmd = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "insert into KP_Lib values('" & Format((Val(str) + 1), "0000") & "','" & id & "','" & tab & "','" & cd & "','" & zd & "','" & sl & "','" & DBNull.Value & "')"

cmd.ExecuteNonQuery()

str = Val(str) + 1

Me.update(str)

Return DBNull.V alue

End Function

Public Function update(ByVal str As String)

Dim cmd1 As New SqlClient.SqlCommand

Dim adp1 As New SqlClient.SqlDataAdapter

Dim ds1 As New Data.DataSet

cmd1 = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "update Kushu set Max='" & str & "'"

cmd1.ExecuteNonQuery()

Return DBNull.V alue

End Function

Public Function add() As String

Dim cmd1 As New SqlClient.SqlCommand

Dim adp1 As New SqlClient.SqlDataAdapter

Dim ds1 As New Data.DataSet

cmd1 = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "select * from Kushu"

adp1.SelectCommand = cmd1

adp1.Fill(ds1, "date")

Return ds1.Tables(0).DefaultView.Item(0).Item(1)

End Function

Public Function deleteRK(ByVal id As String)

Dim cmd As New SqlClient.SqlCommand

cmd = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "delete from KP_Lib where ID='" & id & "'"

cmd.ExecuteNonQuery()

Return DBNull.V alue

End Function

Public Function updateRK(ByVal id As String, ByVal ckid As String, ByVal cptab As String, ByVal cdat As String, ByVal kpzd As String, ByVal kpsl As String)

Dim cmd As New SqlClient.SqlCommand

cmd = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "update KP_Lib set CK_ID='" & ckid & "',CP_Tab='" & cptab & "',KP_date='" & cdat & "',KP_ZD='" & kpzd & "',KP_SL='" & kpsl & "'where ID='" & id & "'"

cmd.ExecuteNonQuery()

Return DBNull.V alue

End Function

Public Function find(ByVal id As String) As DataSet

Dim cmd As New SqlClient.SqlCommand

Dim adp1 As New SqlClient.SqlDataAdapter

Dim ds1 As New Data.DataSet

cmd = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "select * from KP_Lib where ID='" & id & "'"

adp1.SelectCommand = cmd

adp1.Fill(ds1, "date")

Return ds1

End Function

Public Function SHR(ByVal id As String, ByVal name As String)

Dim cmd As New SqlClient.SqlCommand

cmd = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "update KP_Lib set KP_SH='" & name & "'where ID='" & id & "'"

cmd.ExecuteNonQuery()

Return DBNull.V alue

End Function

Public Function Process(ByVal line As String) As DataSet

Dim cmd As New SqlClient.SqlCommand

Dim adp1 As New SqlClient.SqlDataAdapter

Dim ds1 As New Data.DataSet

cmd = Me.connlink

https://www.360docs.net/doc/d711851457.html,mandType = CommandType.Text

https://www.360docs.net/doc/d711851457.html,mandText = "EXEC Proc_Pagination KP_Lib, DEFAULT,ID,5, " & line & ", DEFAULT, 1, ''"

adp1.SelectCommand = cmd

adp1.Fill(ds1, "te")

Return ds1

End Function

End Class

五实验结果

1、数据库的建立:

2.页面显示:

3.增加操作。

4.删除操作。

5.修改操作。

6.审查操作。

五、实验总结

通过此次实验对Microsoft Visual Studio中的表示层、业务逻辑层、公共类库层、数据访问层之间的区别与联系有了更深的认识,最重要的是对制作单据有了初步的了解与掌握,能够简单的进行单据的各种的操作,而且对前面的控件的掌握更加的熟练。

VB程序设计实验报告

《VB程序设计》实验单元二 实验报告 专业班级:新闻班姓名: ________________ 学号:—指导教师:完成时间:2013.5 一、实验题目 数组和自定义类型 二、实验环境 Visual Basic6.0 程序软件 三、实验目的 1.掌握数组的声明、数组元素的引用。 2.掌握固定长度数组和动态数组的使用差别。 3.掌握数组常用的操作和常用算法。 4.掌握列表框和组合框的使用。 5.掌握自定义类型及数组的使用。 四、实验内容 1.随机产生30—100 (包括30、100)的10个正整数,求最大值、最小值、平均值,并显示整个数组的只和结果。 2.随机产生20个学生成绩,统计各分数段人数。即0~59、 60~69、 70~79、80~89、90~100,并显示结果。

五、实验步骤 1.打开VB界面,建立工程 2.在窗体窗口设置界面 3?属性窗口控件对象属性设置 4.编写程序代码 5?运行程序及调试 6?程序建立,保存工程文件六、实验结果 第1题:

70 53 57 28 30 77 1 76 81 70最大值81 最小值1 平均值54.3 4 41 86 79 37 96 87 5 94 36 最大值96 最小值4 平均值56.5 52 76 5 59 46 29 62 64 26 27 :最大值76 最小值5 平均值44.6 82 82 58 98 91 22 69 98 24 53最大值98 最小值22 平均值67.7 10 99 67 1 57 10 10 79 28 4 最大值99 最小值1 平均值36. 5 29 38 30 94 97 40 27 16 16 64实验 r Q Forml 回

vb科学计算器实验报告

西安科技大学 可视化编程语言实验报告 题目:科学计算器 班级: 学号: 姓名: 2010年11月

复杂型科学计算器的设计与实现实验目的 1.通过本实验,进一步理解Visual Basic的编程方法。 2.提高运用Visual Basic编程的能力。 3.培养对所学知识的综合运用能力。 实验类型 综合型。 实验内容与步骤 一.界面设计。

Command5Caption= 三.程序代码: Dim num1 As Single, num2 As Single Dim fu As Integer Dim sign As Integer Private Sub Command1_Click(Index As Integer) Select Case Index Case 0 To 9 sign = Index + 20 Case 10 sign = Index + 20 fu = 1 Case 11 To 14 sign = Index + 20 End Select = "" End Sub Private Sub Command2_Click(Index As Integer) Select Case Index Case 0 To 9 = & Index If fu = 0 Then num1 = Val Else num2 = Val

Case 10 = & "-" Case 11 = & "." Case 12 To 18 = "" sign = Index fu = 1 End Select End Sub Private Sub Command3_Click() If =”” then else = Left$, Len - 1) End if End Sub Private Sub Command4_Click() = "" End Sub Private Sub Command5_Click() Dim n As Integer, cf As Single fu = 0: cf = 1 Select Case sign Case 12 = num1 & "+" & num2 = num1 + num2 Case 13 = num1 - num2 Case 14 = num1 * num2 Case 15 = num1 / num2 Case 18 For n = 1 To num2 cf = cf * num1 Next n = cf Case 20 = Sin(num1) Case 21

心得体会数据库VB课程设计心得体会

三一文库(https://www.360docs.net/doc/d711851457.html,)/心得体会范文/心得体会数据库VB课程设计心得体会 数据库课程设计大赛的尘嚣渐渐远去,怀着对这次大赛的些许不舍,怀着对当初课程设计开始时候的豪情万丈的决心的留恋,怀着通过这次课程设计积累的信心与斗志,我开始写这篇*,为自己的足迹留下哪怕是微不足道但是对自己弥足珍贵的痕迹 并期望与大家共勉。 首先,让我的记忆追溯到大二暑假,在老大的指引下(老大劝我学https://www.360docs.net/doc/d711851457.html,),我接触到microsoft公司的.net产品。那个时候我已经学过vc和asp,因为windows程序设计实验的课的关系,接触过vb,但是没有专门去学他,因为习惯了c++里面的class,int,觉得vb的sub,var看着就不是很顺心。我是一个好奇心很强的人,突然看到了一个号称“.net是用于创建下一代应用程序的理想而又现实的开发工具”,而且主推c#语言,由于对c语言的一贯好感,我几乎是立刻对他产生了兴趣。我就开始了对c#的学习,任何语言都不是孤立存在的,所以数据交互是很重要的,暑假的时候我把我们这学期的课本数据库系统概论看了一遍。我记得以前用c语言编程的时候,数据是在内存中申请空间,譬如

使用数组等等。很耗费内存空间。这个时候就是数据库站出来的时候啦,于是我又装上了sqlserverxx,以前学asp的时候用的是access,那个时候只是照着人家做,理论是什么也不是很清楚。 通过一个暑假的学习,基本搞清楚了理论方面的东西,具体怎么用也不是很清楚。但是这为这学期的课程设计打下了铺垫。 来到学校后,随着这学期的数据库课程大赛开始了,我有一个看法就是我自己应该具备的能力不是我会多少,而是我应该具备快速学会东西的能力。遇到什么就学什么。我们有时候很容易被一些专业名词说吓着,包括什么建模,软件工程,数据分析,数据挖掘等等。我身边就有很多同学被这些纸老虎所唬住,而没有勇气去接触他们,总是说这个太难了之类的退堂鼓的话,他们低估了自己的潜力同时也压抑住了他们自己的好奇心。其实都是纸老虎,又不是什么国家科研难题,只是去用一些工具,发明工具是很难,但是用一个工具就容易多了,justdoit!我记得我做这个数据库之前,我们老师说要做好前期分析,我就在网上搜索用什么分析工具好。最后我选择了roseuml建模工具。在此之前,我脑袋里面没有软件建模的思想,什么uml建模对我而言就是一张空白的纸。但是真正接触后并没有想象的那么难,有什么不懂的上网去搜索,这是一个信息横流的世界,有google,baidu就没有不能解决的知识难题。以及后来的数据库分析的时候用到的powerdesigner也是一样。

VB实验报告 常用控件设计

南京工程学院 电力工程学院 2010/ 2011 学年第 2 学期 实验报告 课程名称 VB语言程序设计 实验项目名称常用控件设计 实验学生班级 实验学生姓名 同组学生姓名 实验时间 2011年4月25 日 实验地点电力工程基础实验室 实验报告成绩:评阅教师签字: 年月日 电力工程学院二OO七年制

说明 1. 实验报告为实验的重要考核依据之一,每个实验必须定一份实验报告. 本实验报告原则上要求手写。 2.本实验报告各项内容的具体格式、字数可由指导教师根据实验具体情况提出具体要求。各项内容可另附页,为便于归档,附页尺寸不得大于本实验报告尺寸,并注意粘牢于附页粘贴处。 3. 实验报告封面中的“实验名称”应为实验教学大纲上所列的规范名称,“实验地点”应写出实验室的具体名称。请确认无误后再填写。 4. 实验报告的建议格式为: 一、实验目的和要求; 二、主要实验仪器和设备; 三、本次实验内容 (一)实验项目名称(按本次实验各项目填写) 1、原理或接线图 2、实验步骤及注意事项 3、实验预习过程中所遇到问题 …… 四、实验记录及数据处理(主要内容包括实验具体实施步骤、 实验原始数据、计算过程与结果、数据曲线、图表等。具体 格式按指导教师要求) 五、实验结论(主要内容包括本实验小结、实验体会或疑 问等。具体格式按指导教师要求) 5. 实验成绩由实验预习、实验表现、实验报告三部分组成。其中前两项各占总成绩的30%。实验报告成绩依据报告的科学性、全面性、规范性及书写态度综合考核。实验报告采用百分制,占实验总成绩的40%,教师请阅本报告后需签字并给出实验报告百分制成绩。 6. 实验报告需按要求时间以班级为单位交给指导教师,最长时间不得超过两周,实验报告如有明显抄袭者或不交者,实验总评成绩按 0 分记。

VB课程实验报告

山西财经大学《程序设计(VB+Acces)》实验报告 ****年*月**日实验题目1选择结构程序设计 选课课号2015-2016-2-N081002S00-08034- 学院 ***** 学院 班 级 ******* 姓名*** 学 号 ********* 理论课教师李平珍 上机指 导教师 李平珍 实验目的及要求: 1.掌握条件表达式和分支语句 2.正确使用If...Then...Else和If...Then...ElseIf等语句3.使用选择性控件实现程序应用 编写以下程序段: 求一元二次方程ax2+bx+c=0的根 设计一个四则运算计算器 实验的详细操作步骤、程序代码及运行截图: 一. Private Sub Command1_Click() Dim A As Single, B As Single, C As Single Dim R1 As Single, R2 As Single A = Val B = Val

If B ^ 2 - 4 * A * C < 0 Then MsgBox "该方程无解." ElseIf B ^ 2 - 4 * A * C = 0 Then R1 = -B / 2 / A MsgBox "该方程仅有一个根为" & R1 & "." Else R1 = (-B + Sqr(B ^ 2 - 4 * A * C)) / (2 * A) R2 = (-B - Sqr(B ^ 2 - 4 * A * C)) / (2 * A) MsgBox "该方程有两个根分别为" & R1 & "和" & R2 & "." End If End Sub 二. Private Sub cmdCal-Click() Dim x1 As Single,sign As String,x2 As Single X1=Val(txtA):sign=txtB:x2=Val(txtC)

VB课程设计报告+计算器

目录 ●概要设计说明 (3) ●总体设计分析 (3) ●小组成员及分工方法....................................3 -4 ●功能模块图 (4) ●负责模块的程序设计分析 (5) ●负责模快的程序源代码及流程图.....................5-12 ●公共系统使用说明及截图..............................13-16 ●结束语、心得体会 (17) ●课程设计结评分表…………………………………18-19

一、概要设计说明 本组设计的科学计算器具有科学型和标准型两种类型,适合不同需要。科学型中包含弧度与角度的计算,同时兼具2、8、10、16进制的运算。在标准型中,编辑菜单(edit)包含复制(copy)、粘贴(paste)。查看菜单包含标准型(standar)、科学型(scientific)。帮助菜单中包含关于(about)(内含开发制作者信息) 二、总体设计分析(含功能模块图) 一.小组成员分工 1 科学型角度弧度和进制的调用,由小组成员共同完成 2 科学计算器中,x^2,x^3,x^y,1/x,n!,Log按键,及八进制转二 进制,八进制转十进制,由**负责。 3科学计算器中,BackSpance、CE、C和运算符号+、-、*、/、.、-/+、=以及标准型计算器由***负责 4 科学计算器中,sin,cos,tan,Rnd,Exp,ATn按钮以sin/cos/tan 计算时角度和弧度的转换由**负责。 5 科学行计算器中,Copy,Pst,Not,And,Xor,Int,Or, Abe,Exit按钮;将十进制转化为二进制,制转化为十进制,将二进制转化为八进制由**负责。

Vb课程设计-学生成绩处理

学生成绩处理设计报告 一、设计思路 1.要达到的目的 学习VB程序设计的方法,充分体会VB在程序设计方面的强大功能和特点,培养运用VB解决实际问题的能力。通过本次课程设计,使学生进一步巩固课堂上学到的知识,能利用VB中的基本控件和数组编写一个小的应用软件—学生成绩处理。 2.关键问题的解决 ①设计程序界面 ②选取ProgressBar 控件 ③添加TXT文件 二、模块之间的调用关系,或程序流程图 三、部分程序关键源代码及注释 Dim data(100, 3) As String Dim num As Integer Private Sub Command1_Click(Index As Integer) Close #1 Select Case Index Case 0 Open "d:\成绩.txt" For Append As #1 Dim flag As Boolean For i = 0 To 3 If Text1(i) = "" Then MsgBox "请确认学号,姓名,分数都已输入", vbOKOnly, "提示" flag = True

Next If Not flag Then Write #1, Text1(0).Text; Text1(1).Text; Val(Text1(2).Text); Val(Text1(3).Text) MsgBox "添加成功" End If Case 1 Picture1.Cls Dim StrLine As String, a() As String Dim x As Integer, b As Integer Open "D:\成绩.txt" For Input As #1 i = 0 Do While Not EOF(1) Line Input #1, StrLine If StrLine <> "" Then a() = Split(StrLine, ",") For j = 0 To 3 data(i, j) = a(j) Next End If i = i + 1 Loop num = i For x = 0 To num For j = 0 To 3 Picture1.Print data(x, j) + " "; Next Picture1.Print Next Case 2 Picture2.Cls Open "d:\成绩.txt" For Input As #1 While Not EOF(1) Line Input #1, StrLine ss = ss + StrLine + vbCrLf Wend Picture2.Print ss End Select Close #1 End Sub Private Sub Form_Load() Open "D:\成绩.txt" For Append As #1

VB课程设计实验报告

第1章 统设计的目的与意义: 客房管理系统用于宾馆旅客入住情况登记,包括旅客的姓名及身份证号的登记,以及入住房间信息.当旅客离开时,需要办理退房结帐手续.对于一定时间没的旅客入住情况实现基本查询,报表打印功能.对于宾馆本身也实现了客房增减,入住情况查询等功能. 无论各种等级的宾馆,使用客房管理系统都具有非常实用的价值.使用该系统可以大大节省时间,提高办公效率,而且非常方便的实现旅客信息的查询,以及对宾馆本身客房入住情况及时了解.因此,客房管理系统的开发无疑具有深远的意义. 系统功能设计 系统设计包括数据库设计,主界面设计,菜单设计以及功能设计.而其他功能设计包括系统登录设计,旅客信息登记,旅客信息查询,退房信息处理设计以及报表输入等功能设计,系统功能设计流程图如图所示

第2章 数据库设计 旅客信息表为旅客的个人信息加入住客房信息,数据结构如表 表2.1 客房信息表为客房入住情况的基本信息,数据结构如表 表2.2 旅客退房记录表为旅客退房相关的一些记录信息,数据结构如表 旅客退房记录表设置 表2.3 管理人员信息表存储宾馆管理人员使用该系统的帐号密码,数据结构表 管理人员信息表设置

表2.4 第3章 主体内容 3.1 设计标准模块 本系统设计过程中,创建一个通用函数模块,用于实现数据库连接及按需要打开一个数据表。程序代码如下: Option Explicit Public Sub opentable(pado As Adodc, precordsource As String) With pado .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "/Total.mdb" .CommandType = adCmdUnknown .RecordSource = precordsource .Refresh End With End Sub 3.2 户登录界面设计 用户登录的作用是判断使用本程序的用户是否是合法用户。在程序进入登录界面时要求输入用户名和密码,如果用户名,密码正确程序继续执行。当密码错误输入的次数超过设定次数时,给出提示信息退出程序,这样防止了非法用户对本程序的使用。 3.2.1工作界面设计

VB实验一 实验报告

实验报告一 课程VB程序设计实验项目Visual Basic环境 顺序选择程序设计(4学时) 成绩 专业班级 姓名学号实验日期 实验目的 (1)熟悉Visual Basic6.0集成开发环境 (2)掌握Visual Basic程序的开发过程,能够运行一个完整的Visual Basic程序(3)掌握选择控制结构(If、Select case)语句实现程序分支 (4)掌握控制结构相关控件(单选按钮、复选框) (5)能综合运用选择及循环控制结构解决较复杂的问题 实验内容 一、VB环境和顺序结构 【实验1】设计一个简单VB程序(10分) 它由一个窗体、一个文本框和3个命令按钮组成。窗体的标题为"Visual Basic 程序设计示例",当用户单击命令按钮“显示”时,文本框中出现“欢迎使用Visual Basic 6.0”,窗体上显示“你好”,单击命令按钮“清除”时,清除文本框中显示的内容和窗体上的内容,单击命令按钮“结束”时,结束程序。 实验结果: 【实验1 代码】 【实验1 典型结果】 【实验2】编写程序,其功能为输入三角形的三边,求三角形的面积。计算公式为:

S=(a+b+c)/2,面积=sqr(s*(s-a)*(s-b)*(s-c)) (20分) 程序界面如下所示 实验结果: 【实验2 代码】 【实验2 典型结果】 【选做1】单击窗体时,随机产生一个三位正整数,然后逆序输出该数,产生的数与逆序数同时显示,结果如下所示,要求用两种方法实现(使用数字的逆序和字符串的逆序)(15分) 实验结果: 【方法1 代码】 【方法1 典型结果】 【方法2 代码】 【方法2 典型结果】

VB计算器课程设计报告

《软件开发技术》 课程设计报告 题目计算器的设计与实现 专业班级计算机科学与技术 0701 学号 姓名 指导教师 2010年7 月15 日 计算器的设计与实现

摘要:通过学习VISUAL BASIC语言应用VB开发工具,利用响应鼠标事件即可制作简易计算器,响应鼠标事件即:当用户想要进行运算时,可以用鼠标直接点击界面的数字键、运算符以及各功能的按钮(清除,退出,鼠标位置)。具体操作如下:用鼠标按动界面上第一个数字,然后按动运算符,再按动界面上的第二个数字,最后按等于即可运算出结果。 1.界面设计: 应用VISUAL BASIC开发工具,根据WINDOWS计算器界面模型,修改后制作计算器界面。新建一个窗体,添加一个文本框用于显示运算数字和结果,添加若干按钮包括(数字0—9,+,-,*,/,=,CE, C, Back,%,1/x , sqrt)。 当单击数字按钮时输入运算数时,单击运算符按钮,再单击“=”按钮,则再文本框中显示计算结果。具体如下图所示: 图1计算器界面设计示意图 2.程序设计: (1)新建框体和按键模型后定义变量:输入的操作数,Dim Op1, Op2。小数点是否仍然存在,Dim DecimalFlag As Integer。操作数个数,Dim NumOps As Integer。指示上一次按键事件的类型,Dim LastInput。指示未完成的操作,Dim OpFlag。定义文本框输出,Dim TempReadout。窗体的初始化过程,设置所有变量为其初始值:DecimalFlag = False NumOps = 0

LastInput = "NONE" OpFlag = " " Readout = Format(0, "0.") 'Decimal.Caption = Format(0, ".")。 (2)输入数字键(0-9)的Click事件过程,向显示中的数追加新数:调用format 函数强制定义始终在第一位添加一个”.”,并在显示数中追加新数,如果显示数小于零,则添加负号。 If LastInput <> "NUMS" Then Readout = Format(0, ".") DecimalFlag = False End If If DecimalFlag Then Readout = Readout + Number(Index).Caption Else Readout = Left(Readout, InStr(Readout, Format(0, ".")) - 1) + Number(Index).Caption + Format(0, ".") End If If LastInput = "NEG" Then Readout = "-" & Readout LastInput = "NUMS" (3)运算符(+, -, x, /, =)的Click 事件过程如果接下来的按键是数字键,增加NumOps如果有一个操作数,则设置Op1如果有两个操作数,则将Op1 设置为Op1与当前输入字符串的运算结果,并显示结果(以其中加法部分为例): If LastInput = "NUMS" Then NumOps = NumOps + 1 End If elect Case NumOps Case 0 If Operator(Index).Caption = "-" And LastInput <> "NEG" Then Readout = "-" & Readout LastInput = "NEG" End If Case 1 Op1 = Readout If Operator(Index).Caption = "-" And LastInput <> "NUMS" And OpFlag <> "=" Then Readout = "-" LastInput = "NEG"

VB图书管理系统 课程设计报告

VB语言程序设计课程设计报告 系 (部) 专业班级 学生姓名 学号/序号 指导教师 完成时间

图书管理系统 一、功能描述 使用VB6.0中各种控件的常用属性和事件、数组的各种操作以及数据库的相关操作(数据库的建立、编辑、查找、删除等),建立了这个简易的图书管理系统,方便图书管理人员对图书的管理。用户可以通过此系统的添加、删除,还回,借出等功能对书籍信息、书籍流通进行编辑同时也可以通过直接输入想要查询的书籍信息来获得书籍的流通及库存等相关信息。 二、概要设计 1、系统功能模块框图设计 首先程序运行,出现一个MDI主窗体,里面分别有登录,书籍信息管理系统,退出三个菜单选项,登录前,管理按钮不可用,当正确输入用户名以及密码以后,点管理按钮,图书管理窗体显示,用户可对图书信息进行管理。 2、数据库设计 创建一个数据库为mydb.mdb,该数据库共包含3张表,分别为“书籍信息表”、“图书归还表”和“图书借出表”,表结构如下:

书籍信息表:图书编号、图书名、作者、出版社、数量、出版日期、价格 图1. 书籍信息表 图书归还表:图书编号、图书名、作者、出版社、数量、图书是否损坏、借出日期、归还日期; 图2. 图书归还表 图书借出表:图书编号、图书名、作者、出版社、借出数量、借出时间、联系电话、借出期限、借出者姓名。 图3. 图书借出表

三、详细设计 1、MDI主界面 用户登录模块中登录与取消两按钮,单击登录会进入系统进行下一步的操作,用户名文本框与数据库相连接,当在用户名文本框输入用户名后点击登录按钮后,会在数据库中进行查询看数据库中是否会有该用户名,且该用户名的密码是否与密码框中输入的相同,如果相同会进入系统,如果不存在该用户名或密码与用户名不相匹配,则会提示“密码错误”,用户名文本框会得到焦点,让重新输入。 (1)窗体截图(如图5.1) 图1 MDI主界面

《VB程序设计》实验报告

台州学院 《VB程序设计》实验报告 实验1.1设计一个程序,程序运行的初始界面如图1-1所示。当单击“显示”按钮时,在文本框中显示“欢迎使用VB!”(图1-1);当单击“清除”按钮时,清除文本框内的文本;当单击“退出”按钮时,结束程序运行。Private Sub Command1_Click() Text1.Text = "欢迎使用VB!" End Sub Private Sub Command2_Click() Text1.Text = "" End Sub Private Sub Command3_Click() End End Sub 实验1.2 设计一个程序,程序运行的初始界面如图1-3所示,其中“显示”按钮为不可用。同时要求: (1)当单击“改变文字”按钮时,在左边标签文字内容改为“你好,张三!”,同时“改变文字”按钮变为不可用(图1-4); (2)当单击“隐藏”按钮时,将左边标签设为不可见,同时“隐藏”按钮变为不可用,“显示”按钮变为可用(图1-5); (3)当单击“显示”按钮时,重新显示左边标签,同时“隐藏”按钮变为可用,“显示” Private Sub Command1_Click() Label1.Caption = "你好,张三!" Command1.Enabled = False End Sub Private Sub Command2_Click() Label1.Visible = False Command3.Enabled = True Command2.Enabled = False End Sub Private Sub Command3_Click() Label1.Visible = True Command2.Enabled = True Command3.Enabled = False End Sub 实验2.1 设计一个程序,运行时界面如图2-1所示。当单击“左”、 “右”、“上”、“下”按钮时,标签分别向左、右、上、下移动。 Private Sub Command1_Click() Label1.Left = Label1.Left - 100 End Sub Private Sub Command2_Click() Label1.Left = Label1.Left + 100 End Sub Private Sub Command3_Click() Label1.Top = Label1.Top - 100 End Sub Private Sub Command4_Click() Label1.Top = Label1.Top + 100 End Sub

vb计算器设计报告

一.设计思路 (1) 二.关键问题的解决 (1) 三.概要设计说明 (1) 四.源代码 (1) 五.心得体会 (8)

一.设计思路 1.要达到的目的要达到的目的主要是培养学生利用系统提供的基本控件进行创新性设计,理解Visual Basic 语言中面向对象的程序设计。培养学生综合利用Visual Basic 语言进行程序设计的能力。 二.关键问题的解决 先使用Command 命令按钮,命令按钮控件数组,文本框等基本控件设计窗体,再根据下面方法编制程序: 三.概要设计说明 本组设计的科学计算器具有科学型和标准型两种类型, 适合不同需要.科学型中包含弧度与角度的计算,同时兼具2,8,10,16 进制的运算. 四.源代码 Dim num1 As Double Dim num2 As Double Dim num3 As Double Dim flag As Double Dim operator As Integer Dim q As Integer Private Sub Command1_Click(Index As Integer) Select Case Index Case Is <= 9 If Index = 0 And Val(Text1.Text) = 0 Then Text1.Text = 0 Else If Val(Text1.Text) = 0 Then Text1.Text = Index

Else Text1.Text = Text1.Text & Index End If End If Case Is >= 20 If (Val(Text1.Text) = 0) Then Text1.Text = Command1(Index).Caption Else Text1.Text = Text1.Text + Command1(Index).Caption End If Case 10 Text1.Text = Text1.Text + "." Case 11 Text1.Text = -Val(Text1.Text) Case 12 If Not flag Then num1 = Val(Text1.Text) Text1.Text = 0 flag = True operator = 1 End If Case 13 If Not flag Then num1 = Val(Text1.Text) Text1.Text = 0 flag = True operator = 2 End If Case 14 If Not flag Then num1 = Val(Text1.Text) Text1.Text = 0 flag = True operator = 3 End If Case 15 If Not flag Then num1 = Val(Text1.Text) Text1.Text = 0 flag = True operator = 4 End If Case 16 If Not flag Then

VB程序设计课程设计报告完整版

V B程序设计课程设计 报告 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

《VB程序设计》 课程设计报告(2016 — 2017 学年第 1 学期) 题目:排序演示 学院:经济与管理学院 班级:物流管理1502 学号: 姓名: 指导教师:阮冰 时间:起 2017年1月3日止 1月6日

一、课程设计基本信息 课程代码:05190124 课程名称:计算机基础课程设计 课程英文名称: Computer-based Course Design 课程所属单位(院(系)、教研室):数学与计算机学院计算机基础课程群 课程面向专业:生物科学类、制药工程、制药工程(生物制药)、药物制 剂、物流管理 课程类型:必修课 先修课程:大学计算机基础通识选修课程、Visual Basic程序设计课程学分:1 总学时:16 二、课程设计目标 掌握所学语言程序设计的方法,熟悉所学语言的开发环境及调试过程,熟悉所学语言中的数据类型,数据结构、语句结构、运算方法,巩固和加深对理论课中知识的理解,提高学生对所学知识的综合运用能力。通过综合设计要求达到下列基本技能: 1.培养查阅参考资料、手册的自学能力,通过独立思考深入钻研问题,学会自己分析、解决问题。 2.通过对所选题目方案分析比较,确立方案,编制与调试程序,初步掌握程序设计的方法,能熟练调试程序。 3.系统设计编程简练,可用,功能全面,并有一定的容错能力。用户界面良好,有较好的输出功能。在完成课题基本要求后,具有创新型设计,具有一定的实用价值。 4.根据个人的设计调试过程,撰写设计报告。 三、课程设计内容 利用已掌握的VB程序设计语言基础,以及面向对象的程序设计方法、事件驱动的编程方式,进行应用程序和系统的开发设计。在强化巩固已有编程知识基础之上,训练新的设计与编程思路,通过综合应用所学知识设计、编制、调试实用的Visual Basic程序。 四、课程设计要求 1.要求每个同学都要认真对待,积极参与。 2.课程设计结束时,提交完成的所有源程序、相关文件和可执行文件。同 时填写并完成《课程设计报告册》。 3.不符合要求的程序、设计报告、抄袭的设计报告或源程序代码、在设计 中完全未参与的将作不及格处理。 五、考核方式

VB实验报告模板

课程编号:B080103140 https://www.360docs.net/doc/d711851457.html,程序设计 实验报告 东北大学软件学院

1.实验目的 (1)练习https://www.360docs.net/doc/d711851457.html,的控件的综合运用。熟悉https://www.360docs.net/doc/d711851457.html,的集成开发环境,掌握https://www.360docs.net/doc/d711851457.html, 编程技巧和开发过程。 (2)训练学生对https://www.360docs.net/doc/d711851457.html,的基本语句、控件、文件等的综合运用。 2.实验内容 (1)https://www.360docs.net/doc/d711851457.html,控件综合应用。 (2)https://www.360docs.net/doc/d711851457.html,文件操作——具体的名称(需要替换并变为黑色)。 3.程序中使用的控件及其命名 把程序中用到的控件类型及对应的名称以表格的形式给出,表格的行数可以根据需要进行扩充。 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。 注意说明文字需要删除,不能保留在文档中。 (1)实验1的控件及命名 (2)实验2的控件及命名 4.系统实现与调试 把主要实现的功能用语言进行描述,并给出调试时的截图(主要是功能验证的截图,在结算时,是否能正确的找零等) 如果包含图片,图片要居中,而且图片的高度不能超过页面高度的1/3。 (1)实验1的系统实现与调试 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。 注意说明文字需要删除,不能保留在文档中。

(2)实验2的系统实现与调试 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。注意说明文字需要删除,不能保留在文档中。 5.创新点及存在问题 列举出主要的创新点和存在的问题。正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。注意说明文字需要删除,不能保留在文档中。 6.实验总结 正文字体为“宋体五号”,并且为黑色,首行缩进2个汉字,如包含英文,用“Times New Roman”,行间距为“多倍行距”,设置为1.25(从弹出菜单的“段落”菜单项进行设置,或利用“格式刷”直接从本说明刷取格式)。注意说明文字需要删除,不能保留在文档中。

VB程序设计实验报告

《VB程序设计》实验报告 专业:信息管理与信息系统 班级:1502班 学号: 姓名: 日期:2016年12月20日

一、实验题目:记事本程序的设计 二、实验目的 1、掌握菜单编辑器的使用方法。 2、掌握菜单事件的编程方法。 3、初步掌握多窗体程序设计方法。 三、实验内容与步骤 1、实验内容:设计一个记事本程序。 2、界面设计(贴出对象属性表和界面设计图)。 ①在窗体frmPad上添加一个文本框text1,并根据下表修改窗体及控件属性。 对象窗体属性设置 对象名属性值 FrmPad Caption “记事本” Text1 MultiLine True ScrollBars 2-Vertical Text 清空 ②使用菜单编辑器在窗体上建立菜单:选中窗体frmpad后,单击“工具”菜 单的“菜单编辑器”命令,弹出“菜单编辑器“对话框,如下图所示。 ③根据下表设置菜单。 菜单设置 菜单项标题菜单项名称快捷键其他属性编辑mnuEdit ···剪切mnuCut Ctrl+X ···复制mnuCopy Ctrl+C ···粘贴mnuPaste Ctrl+V

文本风格mnuStyle ···粗体(&B)mnuBold "复选"属性为True ···斜体(&I)mnuItalic "复选"属性为True 弹出菜单popMenu "可见"属性为True ···剪切popCut ···复制popCopy ···粘贴popPaste 设计好程序窗体如下图所示。 菜单编辑器

界面设计 3、编写程序代码。 Private Sub Form_Load() Text1.FontSize = 16 Text1.Text = "Visual Basic程序设计" mnuBold.Checked = False mnuItalic.Checked = False End Sub '剪切 Private Sub mnuCut_Click() Clipboard.Clear Clipboard.SetText Text1.SelText Text1.SelText = "" End Sub '复制

VB科学计算器课程设计

湖南医药学院 VB计算器课程设计题目: VB科学计算器 院(系)别临床医学院 专业临床医学 班级本临一班 学号 2015101010121 姓名夏铭锴 指导教师李跃强 二○一六年四月

目录 一、设计内容及要求 二、设计原始资料 三、设计完成后提交的文件和图表设计 四、进程安排 五、主要参考资料 [摘要] 用VB制作这个程序的简单计算器,它包括一个标准的计算器和一个科学计算器。它可以实现简单的加减乘除四则运算,数字的平方、平方根,正弦、余弦、正切,倒数、指数函数、对数函数,角度、弧度、梯度的转换,以及各进制的相互转换。而且它的功能还有退格,清除当前数据,清除所有数据,复制数据,粘贴数据。 在这个计算器的程序中,我用到了单行选择语句If…Then…Else…, 块语句if…then…end if,If语句的嵌套,多条件选择语句Select Case,而且还用到了按钮、文本框、框架、单选按钮控件,菜单的设计。 在此报告中我重点叙述了计算机的各个功能及用法。特别是进制间的转换和数字与运算符之间的联系。。虽然描述的不太完整,但我会尽力使用系统结构图,划分多个模块,让大家明白我设计的运算器的功能的。 [关键词] Visual Basic;计算器;对象;代码 1

2

3

四、进程安排 (1)创建应用程序的界面。 (2)设置属性。 (3)编写代码。 4

附页: 设计原始资料 Private Sub Command1_Click() '删除数字的最后一位If Label3.Caption <> "" Then Label3.Caption = Left(Label3.Caption, Len(Label3.Caption) - 1) Else c = MsgBox("内容已为空!不可删除一位!", 49, "注意!") End If End Sub Private Sub Command10_Click() '输入数字6 Label3.Caption = Label3.Caption + Command10.Caption End Sub Private Sub Command11_Click() If Label3.Caption <> "" Then '输入符号* Label1.Caption = Label3.Caption Label2.Caption = Command11.Caption Label3.Caption = "" Else c = MsgBox("请输入数据后输入符号!", 49, "注意!") End If End Sub 5

vb综合性实验报告

综合性实验 实验名称:高中成绩管理系统 专业班级: 电子商务1104 学生姓名: 学号: 指导教师:李琳

1 需求分析 程序对输入的学生基本情况建立数据库,且拥有对新输入的学生的基本情况进行添加,对已有数据库中的数据进行删减、修改、管理、浏览的功能。 2 运行环境 WINDOWS XP系统;VB6.0; 3开发工具和编程语言 Visual Basic6.0语言; 4 系统设计 Form1的代码: Dim ask As Integer Private Sub Command1_Click() Adodc1.Recordset.MoveFirst End Sub Private Sub Command10_Click() Form2.Show End Sub Private Sub Command11_Click() Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text7.Text = "" Text8.Text = "" End Sub Private Sub Command2_Click() Adodc1.Recordset.MovePrevious If Adodc1.Recordset.BOF Then Adodc1.Recordset.MoveFirst End Sub Private Sub Command3_Click() Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast End Sub Private Sub Command4_Click() Adodc1.Recordset.MoveLast End Sub Private Sub Command5_Click() Adodc1.Recordset.AddNew End Sub Private Sub Command6_Click()

相关文档
最新文档