我有两个结构,有时一个用来自用户或有时两者的数据。我需要检查整个结构,看它是否有数据输入。如果我甚至可以检查变量以查看它是否为空或为空(我在下面所做的),我也可以。当代码运行时,无论结构是否有数据,都始终禁用btnTurn.Enabled。这可能是我的布尔值的问题吗?
结构
Public Structure StructSurvData
Friend szTBMNum As String
Friend dblTBMElev1 As Double
Friend dblTBMElev2 As Double
Friend dblTBMElev3 As Double
Friend dblBACKSIGHT1 As Double
Friend dblBACKSIGHT2 As Double
Friend dblBACKSIGHT3 As Double
Friend dblFORESIGHT1 As Double
Friend dblFORESIGHT2 As Double
Friend dblFORESIGHT3 As Double
Friend szNewMPEDescr As String
Friend szDataComm As String
End Structure
Public Structure StructSurvData2
Friend szTBMNum2 As String
Friend dblTBMElev4 As Double
Friend dblTBMElev5 As Double
Friend dblTBMElev6 As Double
Friend dblBACKSIGHT4 As Double
Friend dblBACKSIGHT5 As Double
Friend dblBACKSIGHT6 As Double
Friend dblFORESIGHT4 As Double
Friend dblFORESIGHT5 As Double
Friend dblFORESIGHT6 As Double
Friend szNewMPEDescr2 As String
Friend szDataComm2 As String
End Structure
如果/其他
If structSD2.szTBMNum2 = Nothing Then
btnTurn.Enabled = False
ElseIf structSD2.szTBMNum2 <> Nothing Then
btnTurn.Enabled = True
End If
答案 0 :(得分:5)
您应始终使用is nothing
代替=nothing
和isnot nothing
代替<> nothing
If structSD2.szTBMNum2 is Nothing Then
btnTurn.Enabled = False
ElseIf structSD2.szTBMNum2 isnot Nothing Then
btnTurn.Enabled = True
End If
甚至更好,@ zaggler建议:
btnTurn.Enabled = structSD2.szTBMNum2 Is Nothing
答案 1 :(得分:1)
If structSD2.szTBMNNum Is Nothing Then