最后设计完成的主界面如图2-2所示。
图5.1上位机软件信息设置主界面
主界面的主要程序代码如下:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label1.Hide()
Label2.Hide()
Label3.Hide()
Label4.Hide()
Label5.Hide()
Label6.Hide()
Label7.Hide()
Label8.Hide()
Label9.Hide()
TextBox5.Hide()
lbVersion.Location = New Point((Me.Width - lbVersion.Width) / 6, 47)
lbDate.Text = Format(Now())
lbDate.Show()
Timer1.Start()
PictureBox1.Show()
End Sub
然后根据协议里面的指令包和数据包来编写各功能界面的程序。这部分程序在函数JudgeTaskMode里面。定义了Mode为字符串变量。然后用了If...Then...Else If语句。如果接收到的字符有4位且包头为"S"的话,则收到的字符为指令。如果接收到的字符有11位且包头为"D"的话,则收到的字符为数据。
当收到指令,则继续用一个If...Then...Else If语句。如果指令的第二位是"2"的话,根据协议规定,当前为剂量率测量模式。Lable1、Label3、Label5调用Show()方法,其余的调用Hide()方法。并且Lable1显示"環境線量率測定",Label3显示"放射能濃度測定", Label5显示 "システム設定"。并且设定好它们的坐标。这是根据下位机软件的显示内容来显示的,上下位机的界面要保持一致。
如果指令的第二位是"3"的话,根据协议规定,当前为辐射浓度测量模式。同样的,Lable1、Label3、Label5调用Show()方法,其余的调用Hide()方法。并且Lable1显示"環境線量率測定", Label3显示"放射能濃度測定", Label5显示 "システム設定"。并设置好Label的坐标。第三位有两个字节,根据第三位的两位字节的不同来进一步细分不同的模式。这里用到了Case语句。当Case"00"时,根据协议,进入本地测量询问。Lable1、Label2、Label3、Label4调用Show()方法,其余的调用Hide()方法。并且Lable1显示"更新する", Label2显示"はい", Label3显示 "いいえ",Label4显示 "バックグラウンド値の前回測定時間"。接着设置好各个Label的显示坐标。同样的,当指令的第三位分别是20、21、30、40、50、51、60、70、80、81时,根据指令包的规定,分别表示正在手动测量本底模式、提示将仪器放入铅室模式、准备进入样品测量模式、设置测量参数模式、正在测量样品模式、样品测量完成模式、显示结果模式、自动测量样品前的提示模式、自动测量本底模式、提示将仪器放入铅室模式。相应的界面部分的程序和Case"00"时类似,不再赘述。
部分代码如下:
If RecData(1) = "3" Then
Mode = Mode & "-辐射浓度测量模式"
Mode = Mode & "-剂量率测量模式"
- 上一篇:双谱图像配准技术研究+powell算法
- 下一篇:基于DSP的雷达恒虚警检测技术研究
-
-
-
-
-
-
-
现代简约美式风格在室内家装中的运用
浅析中国古代宗法制度
中国传统元素在游戏角色...
江苏省某高中学生体质现状的调查研究
高警觉工作人群的元情绪...
上市公司股权结构对经营绩效的影响研究
g-C3N4光催化剂的制备和光催化性能研究
C++最短路径算法研究和程序设计
NFC协议物理层的软件实现+文献综述
巴金《激流三部曲》高觉新的悲剧命运