使用vb,定义一个限差类TolError,附带事件OverError,限差值设计为属性,由用户输入若干个高差(可正可负),计算其总的高差h,超过限差值则触发事件OverError。
时间: 2024-09-27 15:09:05 浏览: 39
在Visual Basic (VB) 中,你可以定义一个名为 `TolError` 的自定义类,用于处理高差限差和触发事件。以下是创建此类的一个示例:
```vb
Public Class TolError
' 定义限差值属性
Public Property LimitDifference As Double
Private _highDifferences As New List(Of Double)
' 初始化事件处理程序
Public Event OverError(ByVal message As String)
' 添加高差值方法
Public Sub AddHighDifference(ByVal difference As Double)
_highDifferences.Add(difference)
' 检查是否超过限差值并触发事件
If _highDifferences.Sum() > LimitDifference Then
RaiseEvent OverError("总高差超过了限差值:" & message)
End If
End Sub
' 计算总高差方法
Public Function GetTotalHighDifference() As Double
Return _highDifferences.Sum()
End Function
End Class
```
使用这个类的方式如下:
```vb
Dim tolErr As New TolError
tolErr.LimitDifference = 10 ' 用户设置限差值
' 添加高差
tolErr.AddHighDifference(5)
tolErr.AddHighDifference(-3)
tolErr.AddHighDifference(7)
' 获取总高差并检查是否超出限差
Console.WriteLine("总高差: " & tolErr.GetTotalHighDifference())
If tolErr.OverError IsNot Nothing Then
Console.WriteLine(tolErr.OverError("当前高差"))
End If
```
阅读全文