Vb.net Visual basic小于0

Vb.net Visual basic小于0,vb.net,Vb.net,我试图制作一个程序,当我把一个小于0的值放在一个标签中,比如“ 负数不能用我有这个 Public Class Form1 'Sebastian roman. Perimeter, 10/1/2014 Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click Try D

我试图制作一个程序,当我把一个小于0的值放在一个标签中,比如“ 负数不能用我有这个

Public Class Form1 'Sebastian roman. Perimeter, 10/1/2014


    Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click

        Try
            Dim intSide1 As Integer = txtSide1.Text
            Dim intSide2 As Integer = txtSide2.Text
            Dim intSide3 As Integer = txtSide3.Text
            Dim intSide4 As Integer = txtSide4.Text
            Dim intTotal As Integer = intSide1 + intSide2 + intSide3 + intSide4
            lblMessage.Text = intTotal.ToString("#,###.##")
        Catch ex As Exception
            MessageBox.Show("Incorrect Input. Enter a numeric value.")
        End Try

    End Sub
End Class

是的,我必须使用try-catch方法,我需要这方面的帮助

整数可以是负数

Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click

    Try
        Dim intSide1 As Integer = txtSide1.Text
        Dim intSide2 As Integer = txtSide2.Text
        Dim intSide3 As Integer = txtSide3.Text
        Dim intSide4 As Integer = txtSide4.Text
        Dim intTotal As Integer = intSide1 + intSide2 + intSide3 + intSide4
        lblMessage.Text = intTotal.ToString("#,###.##")
        //New code
        if intSide1 < 0 or intSide2 < 0 or intSide3 < 0 intSide4 < 0 Then
         MessageBox.Show("Incorrect Input. Negative number not valid")
        end if
    Catch ex As Exception
        MessageBox.Show("Incorrect Input. Enter a numeric value.")
    End Try



End Sub
Private Sub btnCalculate\u Click(ByVal sender作为System.Object,ByVal e作为System.EventArgs)处理btnCalculate。单击
尝试
Dim intSide1作为整数=txtSide1.Text
Dim intSide2作为整数=txtSide2.Text
Dim intSide3作为整数=txtSide3.Text
Dim intSide4作为整数=txtSide4.Text
Dim intTotal为整数=intSide1+intSide2+intSide3+intSide4
lblMessage.Text=intTotal.ToString(“#,###.##”)
//新代码
如果intSide1<0或intSide2<0或intSide3<0,intSide4<0,则
MessageBox.Show(“输入错误,负数无效”)
如果结束
特例
MessageBox.Show(“输入不正确。请输入一个数值。”)
结束尝试
端接头

这听起来很像家庭作业,但您确实需要正确地转换整数,然后执行实际的比较

Public Class Form1 'Sebastian roman. Perimeter, 10/1/2014

    Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click

        Try
           ' Relies on the GetIntegerInput method to throw exceptions
           ' for invalid entries
            Dim intSide1 As Integer = GetIntegerInput(txtSide1.Text)
            Dim intSide2 As Integer = GetIntegerInput(txtSide2.Text)
            Dim intSide3 As Integer = GetIntegerInput(txtSide3.Text)
            Dim intSide4 As Integer = GetIntegerInput(txtSide4.Text)
            Dim intTotal As Integer = intSide1 + intSide2 + intSide3 + intSide4
            lblMessage.Text = intTotal.ToString("#,###.##")
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try

    End Sub

    Private Function GetIntegerInput(ByVal input as String) As Integer)
        Dim returnValue as Integer

        ' Will attempt a proper try parse. AndAlso will short circuit
        ' the comparison so a failure in TryParse will not perform the
        ' the second evaluation. In either case, an actual exception is
        ' thrown with your invalid numeric message 
        If (Not Int32.TryParse(input, returnValue) AndAlso returnValue < 0) Then
            Throw New ArgumentException("Incorrect input. Enter a proper numeric value.")
        End If

        Return returnValue
    End Function
End Class
公共类Form1'塞巴斯蒂安·罗曼周界,2014年1月10日
私有子BTNCalCalculate_Click(ByVal发送者作为System.Object,ByVal e作为System.EventArgs)处理btnCalculate。单击
尝试
'依赖GetIntegerInput方法引发异常
'用于无效条目
Dim intSide1 As Integer=GetIntegerInput(txtSide1.Text)
Dim intSide2 As Integer=GetIntegerInput(txtSide2.Text)
Dim intSide3 As Integer=GetIntegerInput(txtSide3.Text)
Dim intSide4 As Integer=GetIntegerInput(txtSide4.Text)
Dim intTotal为整数=intSide1+intSide2+intSide3+intSide4
lblMessage.Text=intTotal.ToString(“#,###.##”)
特例
MessageBox.Show(例如Message)
结束尝试
端接头
私有函数GetIntegerInput(ByVal输入为字符串)为整数)
将返回值设置为整数
'将尝试正确的try解析。并且还将短路
'进行比较,以便TryParse中的故障不会执行
'第二次求值。在任何一种情况下,都会出现实际异常
'与无效的数字消息一起抛出
如果(不是Int32.TryParse(输入,返回值)和同样返回值<0),则
抛出新ArgumentException(“输入不正确。请输入正确的数值。”)
如果结束
返回值
端函数
末级

这会阻止它,甚至在点击按钮之前:我不知道vb.net。但是你能给一个
整数指定一个
字符串吗(
Dim intSide1 As Integer=txtSide1.Text
)?我想你需要一个
Parse
TryParse
@crashmstr:With
选项Strict Off
它会为你执行隐式转换。谢谢兄弟帮我弄明白了:)我这么做了,但出于某种原因它对我不起作用,但谢谢