VB6编程步骤-全部

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

VB6编程步骤

题目要求

1.新建工程,在工程中新建2个窗体和1个模块,窗体命名为frmMain和frmConfig,添加Excel操作专

用模块。

2.执行菜单命令“工具-选项-编辑器格式”,设置标准文本的字体格式为自己喜欢的格式,执行菜单命令

“工具-选项-编辑器”,“要求变量声明”前打勾

3.设置工程1的属性,修改启动对象为Sub Main,在module1中添加Sub Main过程,并输入代码:

frmMain.Show vbModal。在frmMain上添加一个退出按钮,设置其合适的大小和字体,双击该按钮,输入“Unload Me”。

4.在frmMain窗体上放置“参数设定”按钮,修改合适的外观属性,双击该按钮,输入代码“frmConfig.show

vbmodal”

5.参数设定编程方法:

(1)在module1模块中,定义保存参数的自定义变量

Public Type mSetData ' 自定义数据类型:设置参数,用于保存到磁盘文件中

TH As Single ' 温度高限

TL As Single ' 温度低限

RHH As Single ' 湿度高限

RHL As Single ' 湿度低限

End Type

Public mAlarm As mSetData ' 用自定义类型mSetData 定义设置参数变量mAlarm

Public sAppPath As String ' 字符串,存放应用程序所在的路径

(2)在module1模块中创建一个初始化过程Init,代码如下

Sub Init()

sAppPath = "E:\软件技术基础\TR" '应用程序路径

Open sAppPath & "\Para.a" For Random As #1 Len = Len(mAlarm) ' 打开随机方式访问文件Get #1, 1, mAlarm ' 读取文件内容到变量中

Close #1 '关闭文件

End Sub

在sub Main 中调用Init 过程

Sub main()

Init ' 初始化,读取原设置参数

frmMain.Show vbModal ' 启动主窗体,有模式窗体

End Sub

(3)设置frmConfig窗体的界面。如图所示

上述四个文本框的名字,从上到下依次为:txtTempH,txtTempL,txtRHH,txtRHL

双击该窗体空白处,在Form_Load事件中输入代码,如下

Private Sub Form_Load() '调入旧参数并显示在界面上

Me.txtRHH = mAlarm.RHH

Me.txtRHL = mAlarm.RHL

Me.txtTempH = mAlarm.TH

Me.txtTempL = mAlarm.TL

End Sub

双击该窗体上的“确定”按钮,代码如下:

Private Sub cmdOK_Click() '把界面上输入的新参数保存在变量中

mAlarm.TH = Me.txtTempH

mAlarm.TL = Me.txtTempL

mAlarm.RHH = Me.txtRHH

mAlarm.RHL = Me.txtRHL

'变量保存在文件中

Open sAppPath & "\Para.a" For Random As #1 Len = Len(mAlarm)

Put #1, 1, mAlarm

Close #1

Unload Me

End Sub

6.下位机数据的模拟采集

(1)定义变量存放下位机的数据

Public Type mData ' 自定义数据类型:下位机数据,用于保存到磁盘文件中

T(1 To 2) As Single ' 温度

RH(1 To 2) As Single ' 湿度

End Type

Public mD(1 To 4) As mData ' 用自定义类型mData定义下位机数据变量

(2)在frmMain窗体上放置一个定时器控件,命名为:tmrCaiji,其Ennabled 属性设为True,并设Interval属性为1000,双击定时器,完成代码如下所示:

Private Sub tmrCaiji_Timer()' 采集定时器,模拟产生下位机的数据

For i = 1 To 4

mD(i).T(1) = 30 + Rnd * 20: mD(i).T(2) = 50 + Rnd * 20 ' 随机数 Rnd在0~1

之间

mD(i).RH(1) = 60 + Rnd * 20: mD(i).RH(2) = 30 + Rnd * 20

Next i

End Sub

7.下位机数据更新到界面上,并作报警处理

放置一个定时器,命名为:tmrUpdate,其Ennabled 属性设为True,并设Interval属性为1000,

双击定时器,完成代码如下所示

Private Sub tmrUpdate_Timer() ' 更新界面定时器

For i = 1 To 4 ' 显示温度,并格式化为显示1位小数

Me.lblTemp1(i) = Format(mD(i).T(1), "#0.0"): Me.lblTemp2(i) = Format(mD(i).T(2), "#0.0") Rnd

Me.lblRH1(i) = Format(mD(i).RH(1), "#0.0"): Me.lblRH2(i) = Format(mD(i).RH(2), "#0.0")

Next i

For i = 1 To 4

If mD(i).T(1) >= mAlarm.TH Then ' 温度高于报警值上限

Me.lblTemp1(i).BackColor = vbRed ' 背景变红

ElseIf mD(i).T(1) < mAlarm.TL Then ' 温度低于报警值下限

Me.lblTemp1(i).BackColor = vbCyan '背景变青色

Else ' 温度正常

Me.lblTemp1(i).BackColor = vbGreen ' 背景变绿色

End If

Next i

End Sub

8.绘制曲线

(1)放置按钮“开始绘图”,命名为cmdDraw,输入下列代码:

Private Sub cmdDraw_Click()

Me.tmrDraw.Enabled = Not Me.tmrDraw.Enabled ' 每单击一次,切换一次定时器启动/停止命令

If Me.tmrDraw.Enabled = True Then Me.cmdDraw.Caption = "暂停绘图" Else Me.cmdDraw.Caption = "开始绘图"

End Sub

(2)在frmMain窗体上放置图片框控件picturebox,设置背景为深蓝,命名为picD,在图片框左侧和下侧放置lablel控件,作为坐标刻度指示。,界面如图所示

相关文档
最新文档