Visual Basic - “如果”语句未在标签中显示结果

时间:2012-02-23 00:52:32

标签: vb.net if-statement

我正在进行一项任务,计划需要根据重量计算并显示运输包裹的总成本,以及是否将其运往美国大陆航空,阿拉斯加或夏威夷。但是,当我单击“计算”按钮时,应显示总计的标签将留空。我已经仔细研究了这个并尝试将计算放在“If”语句的末尾/不同部分。以下是我到目前为止所提供的任何帮助:

Dim decWeight As Decimal
Dim decTotalCost As Decimal
Dim decDestination As Decimal
Dim decRate As Decimal

If IsNumeric(txtWeight.Text) Then

    decWeight = Convert.ToDecimal(txtWeight.Text)


    If decWeight <= 30 > 0 Then

        If radContinental.Checked Then
            decDestination = 1
        ElseIf radHawaii.Checked Then
            decDestination = 1.2
        ElseIf radAlaska.Checked Then
            decDestination = 1.26
        End If

        If decWeight <= 2 Then
            decRate = 3.69
        ElseIf decWeight <= 4 > 2 Then
            decRate = 4.86
        ElseIf decWeight <= 6 > 4 Then
            decRate = 5.63
        ElseIf decWeight <= 8 > 6 Then
            decRate = 5.98
        ElseIf decWeight <= 10 > 8 Then
            decRate = 6.28
        ElseIf decWeight <= 30 > 10 Then
            decRate = 15.72
        End If

        decTotalCost = decRate * decDestination
        lblTotalCost.Text = decTotalCost.ToString("C")

    ElseIf decWeight <= 0 Then
        MsgBox("Please Enter a Positive Weight.", , "Input Error")
    ElseIf decWeight > 30 Then
        MsgBox("You Have Entered " & decWeight.ToString() & ". Please Enter a Weight Under 30 Pounds", , "Input Error")
    End If


ElseIf txtWeight.Text = "" Then
    MsgBox("Please Enter the Weight", , "Input Error")

Else : MsgBox("Please Enter a Number", , "Input Error")
End If

1 个答案:

答案 0 :(得分:2)

你应该尝试这个if语句:如果decWeight&lt; = 30并且decWeight&gt; 0然后

这将检查decWeight是否小于或等于30,并确保它是'非零'希望这有助于: - )