Visual Basic 6.0
实现森林计测程序设计
VB的特点
可视化的设计平台
面向对象的设计方法
事件驱动的编程机制
结构化的设计语言
充分利用 WINDOWS资源
开放的数据库与网络支持
VB的特点
传统的编程方法使用的是面向过程、
按顺序进行的机制,其缺点是程序员始终要关心什么时候发生什么事情。
VB采用的是面向对象、事件驱动编程机制,程序员只需编写响应用户动作的程序,如移动鼠标、单击事件,编写代码相对较少。采用控件不涉及到必要的细节,
VB可视化编程的基本概念
1 对象
对象的属性
对象的事件
事件的方法
2 VB的控件
内部控件
ActiveX
可插入的对象
VB可视化编程的步骤
新建一个工程
建立界面
添加对象
设置属性
编写代码
运行工程
修改工程
保存工程
工程的编译应用程序 HIPO图统的计特资征料数一元回归基林本计的测森程序一元线形回归一元材积表标准木法
P 数维据统统计计量欧距几离里系德数任形意面封积闭计多算边程序退出程序使用 使用程序包装窗体菜单包装窗体数据文件的组织
用于计算的应用软件的目的是进行数据处理,不论数据多少,数据文件必须与应用程序分开,其目的是便于保存和修改数据,并且使程序更加具有通用性。
文件的类型很多,用做数据处理的数据文件,起组织形式取决于与计算方法编程所采用的源语言对数据文件组织形式的要求。
数据文件的组织形式
Visual Basic中文企业版有多种的数据输入方法,
但为了使程序有一个通用的数据输入格式,采用了数与数之间用,,,隔开组织文件。
0.461,0.384,0.381,-0.423
0.449,0.402,2.906,0.249
0.263,0.145 0.127,3.104
0.163,0.362,-0.069,0.178
在数据文件编辑好后,要检查带小数点的数据中误键入的,,,。
数据文件和结果数据的显示数据文件和计算结果的显示有很多种方法。
MSFlexGrid是 VB6.0中的一种用于表格数据显示的 ActiveX控件 。
采用 MSFlexGrid控件,用它来显示数据文件很方便,
数据文件和结果数据的显示主窗体的界面主窗体代码 (main.frm)
Private Sub c11_Click()
appear.Show
appear.Caption = "统计资料的特征数的计算 "
End Sub
Private Sub c12_Click()
appear.Show
appear.Caption = "距离系数 "
End Sub
Private Sub c21_Click()
appear2.Show
appear2.Caption = "一元线性回归计算 "
End Sub
Private Sub c22_Click()
appear2.Show
appear2.Caption = "一元材积表计算 "
End Sub
Private Sub c31_Click()
appear3.Show
End Sub
Private Sub c32_Click()
appear31.Show
End Sub
Private Sub mainquit_Click()
MsgBox " 谢谢使用 ",0,"quit!"
Unload Me
End Sub
子程序主模块界面 (appear*.frm)
窗体代码
Private Sub Command1_Click()
appear_show.Show '显示输入文件的内容
End
SubPrivate Sub Dir1_Change()
File1.Path = Dir1.Path '选定文件夹
dir2 = Dir1.Path
End Sub
Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive '选定了驱动器
End Sub
Private Sub File1_Click()
clickname = File1.FileName '选定了文件
Text3.Text = clickname
End Sub
显示结果的窗体模块窗体代码
Private Sub main_Click()
MSFlexGrid1.Row = 3
MSFlexGrid1.Text = " 材积计算方程 "
MSFlexGrid1.TextMatrix(0,1) = Format$(a,"####0.0000")
MSFlexGrid1.TextMatrix(1,1) = Format$(b,"####0.0000")
MSFlexGrid1.TextMatrix(2,1) = Format$(c,"####0.0000")
MSFlexGrid1.TextMatrix(3,1) = Str$(Format$(a,"0.0000")) & "D" & "^" &
Str$(Format$(b,"0.0000"))
MSFlexGrid2.ColWidth(0) = 600
MSFlexGrid2.ColWidth(2) = 600
MSFlexGrid2.TextMatrix(0,0) = "径阶 "
MSFlexGrid2.TextMatrix(0,1) = "材积 "
窗体代码 (续 )
MSFlexGrid2.TextMatrix(0,2) = "径阶 "
MSFlexGrid2.TextMatrix(0,3) = "材积 "
For i = 1 To 24
MSFlexGrid2.TextMatrix(i,0) = i + 3
MSFlexGrid2.TextMatrix(i,1) = Format$(a * (i + 3) ^ b,"####0.0000")
Next i
For i = 1 To 24
MSFlexGrid2.TextMatrix(i,2) = i + 28
MSFlexGrid2.TextMatrix(i,3) = Format$(a * (i + 28) ^ b,"####0.0000")
Next i
End Sub
过程
过程可使程序分成离散的逻辑单元,每个逻辑单元容易调试。
一个程序中的过程,往往不必修改或只需稍作改动,便可以为另一个程序作用。
在 VB中,根据过程是否返回值,分为子程序过程( SUB过程)和函数过程
( Function过程)两种。
过程中调用的计算程序模块
Sub caijihuigui() '一元材积表
a = 0,b = 0,c = 0,o = 0,p = 0,q = 0,r = 0:
s = o,t = 0,x = 0,y = 0,u = 0,v = 0
For i = 1 To np
o = o + Log(z(i,1))
p = p + Log(z(i,2))
q = q + Log(z(i,1)) ^ 2
r = r + Log(z(i,2)) ^ 2
s = s + Log(z(i,1)) * Log(z(i,2))
Next i
x = o / np
y = p / np
t = q - np * x * x
u = s - np * x * y
v = r - np * y * y
c = u / Sqr(t * v)
b = u / t
a = Exp(y - b * x)
End Sub
应用程序的打包和安装
应用程序的打包
应用程序的安装