【问题标题】:Message Box Pop-Up When Not Enough Values are Inputted VB.NETVB.NET 输入值不足时弹出消息框
【发布时间】:2021-06-16 11:03:05
【问题描述】:

当没有输入足够的值(必须超过 500)时,我不想得到一个未处理的异常,我希望弹出一个消息框来通知用户输入的值不足。这是我尝试过的:

Public Class Form1

Dim P_range0 As Double = 1.0672255
Dim P_range100 As Double = 0.9485795
Dim P_range200 As Double = 0.882981
Dim P_range300 As Double = 0.845339
Dim P_range400 As Double = 0.635712
Dim P_range500 As Double = 0.4302155

Dim M_range0 As Double = 0.8731845
Dim M_range100 As Double = 0.7761105
Dim M_range200 As Double = 0.722439
Dim M_range300 As Double = 0.691641
Dim M_range400 As Double = 0.520128
Dim M_range500 As Double = 0.3519945

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim var As String
    var = TextBox1.Text
    Dim numbers() As Double = var.Split(","c).Select(Function(s) Val(s)).ToArray()

    If (var < numbers(500)) Then
        MessageBox.Show("Not enough values inputted")
        If (M_range0 <= numbers(0)) AndAlso (numbers(0) <= P_range0) Then
            If (M_range100 <= numbers(99)) AndAlso (numbers(99) <= P_range100) Then
                If (M_range200 <= numbers(199)) AndAlso (numbers(199) <= P_range200) Then
                    If (M_range300 <= numbers(299)) AndAlso (numbers(299) <= P_range300) Then
                        If (M_range400 <= numbers(399)) AndAlso (numbers(399) <= P_range400) Then
                            If (M_range500 <= numbers(499)) AndAlso (numbers(499) <= P_range500) Then
                                MessageBox.Show("Test Passed")
                            Else
                                MessageBox.Show("Test Failed")
                            End If
                        Else
                            MessageBox.Show("Test Failed")
                        End If
                    Else
                        MessageBox.Show("Test Failed")
                    End If
                Else
                    MessageBox.Show("Test Failed")
                End If
            Else
                MessageBox.Show("Test Failed")
            End If
        Else
            MessageBox.Show("Test Failed")
        End If
    End If


End Sub

Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged

End Sub

结束类

【问题讨论】:

  • 您是在诚实地告诉我们您不知道如何确定数组中有多少元素吗?
  • If (var &lt; numbers(500)) Then String 小于 Double 意味着什么?在项目属性中打开 Option Strict。还要在未来项目的选项中设置它。这会提醒您注意这些错误。

标签: vb.net if-statement input messagebox


【解决方案1】:
If UBound(numbers) < 501 Then
    MessageBox.Show("We need at least 500 numbers")
End If

numbers(500) 是 501 个数字(从 0 到 500)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-28
    • 2019-12-02
    • 1970-01-01
    • 2017-05-13
    • 2011-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多