如何减少VB Net中的大小写?

时间:2018-12-24 14:09:51

标签: vb.net

此代码可以短一些吗?值从10种情况下的10变为+1,如下所示。对于每个文本框,我都有这80种情况,总共有30个文本框,并且代码太长。再次,我必须重复代码,因为aryText = TextNSt1.Text.Split(“,” c)-直到aryText = TextNSt30.Text.Split(“,” c)-所以您对此进行了30次编码,我不太喜欢,逗号,代码太长。在下列情况下,从案例1到案例10,案例11-20,案例21-30,案例31-40,案例41-50,案例51-60,案例61-70、71-80,代码随+1的变化。 ..

Dim i As Integer
    Dim aryText() As String
    'SPLIT THE TEXT INTO AN ARRAY' 
    aryText = TextNSt2.Text.Split(","c)
    For i = 0 To UBound(aryText)
        Select Case aryText(i)
            Case "1"
                LbNxSt1.Text = Val(LbNxSt1.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 1
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "2"
                LbNxSt2.Text = Val(LbNxSt2.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 2
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "3"
                LbNxSt3.Text = Val(LbNxSt3.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 3
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "4"
                LbNxSt4.Text = Val(LbNxSt4.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 4
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "5"
                LbNxSt5.Text = Val(LbNxSt5.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 5
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "6"
                LbNxSt6.Text = Val(LbNxSt6.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 6
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "7"
                LbNxSt7.Text = Val(LbNxSt7.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 7
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "8"
                LbNxSt8.Text = Val(LbNxSt8.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 8
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "9"
                LbNxSt9.Text = Val(LbNxSt9.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 9
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "10"
                LbNxSt10.Text = Val(LbNxSt10.Text) + 1
                txtS10.Text = Val(txtS10.Text) + 10
                txtDrawB1.Text = Val(txtDrawB1.Text) + 1
            Case "11"
                LbNxSt11.Text = Val(LbNxSt11.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 1
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "12"
                LbNxSt12.Text = Val(LbNxSt12.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 2
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "13"
                LbNxSt13.Text = Val(LbNxSt13.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 3
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "14"
                LbNxSt14.Text = Val(LbNxSt14.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 4
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "15"
                LbNxSt15.Text = Val(LbNxSt15.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 5
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "16"
                LbNxSt16.Text = Val(LbNxSt16.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 6
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "17"
                LbNxSt17.Text = Val(LbNxSt17.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 7
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "18"
                LbNxSt18.Text = Val(LbNxSt18.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 8
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "19"
                LbNxSt19.Text = Val(LbNxSt19.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 9
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "20"
                LbNxSt20.Text = Val(LbNxSt20.Text) + 1
                txtS20.Text = Val(txtS20.Text) + 10
                txtDrawB2.Text = Val(txtDrawB2.Text) + 1
            Case "21"
                LbNxSt21.Text = Val(LbNxSt21.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 1
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "22"
                LbNxSt22.Text = Val(LbNxSt22.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 2
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "23"
                LbNxSt23.Text = Val(LbNxSt23.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 3
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "24"
                LbNxSt24.Text = Val(LbNxSt24.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 4
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "25"
                LbNxSt25.Text = Val(LbNxSt25.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 5
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "26"
                LbNxSt26.Text = Val(LbNxSt26.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 6
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "27"
                LbNxSt27.Text = Val(LbNxSt27.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 7
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "28"
                LbNxSt28.Text = Val(LbNxSt28.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 8
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "29"
                LbNxSt29.Text = Val(LbNxSt29.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 9
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "30"
                LbNxSt30.Text = Val(LbNxSt30.Text) + 1
                txtS30.Text = Val(txtS30.Text) + 10
                txtDrawB3.Text = Val(txtDrawB3.Text) + 1
            Case "31"
                LbNxSt31.Text = Val(LbNxSt31.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 1
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "32"
                LbNxSt32.Text = Val(LbNxSt32.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 2
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "33"
                LbNxSt33.Text = Val(LbNxSt33.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 3
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "34"
                LbNxSt34.Text = Val(LbNxSt34.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 4
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "35"
                LbNxSt35.Text = Val(LbNxSt35.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 5
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "36"
                LbNxSt36.Text = Val(LbNxSt36.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 6
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "37"
                LbNxSt37.Text = Val(LbNxSt37.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 7
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "38"
                LbNxSt38.Text = Val(LbNxSt38.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 8
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "39"
                LbNxSt39.Text = Val(LbNxSt39.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 9
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "40"
                LbNxSt40.Text = Val(LbNxSt40.Text) + 1
                txtS40.Text = Val(txtS40.Text) + 10
                txtDrawB4.Text = Val(txtDrawB4.Text) + 1
            Case "41"
                LbNxSt41.Text = Val(LbNxSt41.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 1
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "42"
                LbNxSt42.Text = Val(LbNxSt42.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 2
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "43"
                LbNxSt43.Text = Val(LbNxSt43.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 3
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "44"
                LbNxSt44.Text = Val(LbNxSt44.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 4
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "45"
                LbNxSt45.Text = Val(LbNxSt45.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 5
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "46"
                LbNxSt46.Text = Val(LbNxSt46.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 6
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "47"
                LbNxSt47.Text = Val(LbNxSt47.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 7
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "48"
                LbNxSt48.Text = Val(LbNxSt48.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 8
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "49"
                LbNxSt49.Text = Val(LbNxSt49.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 9
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1
            Case "50"
                LbNxSt50.Text = Val(LbNxSt50.Text) + 1
                txtS50.Text = Val(txtS50.Text) + 10
                txtDrawB5.Text = Val(txtDrawB5.Text) + 1

1 个答案:

答案 0 :(得分:2)

如果您可以算出“数字”和控件之间的关系,则可以像下面这样获得控件:

For ary = 1 To 30
    Dim aryText = Me.Controls("TextNSt" & ary).Text.Split({","c})

    For i = 0 To aryText.Length - 1
        Dim s = aryText(i)

        Dim n = CInt(s)
        Dim LbNxStNum = n Mod 10
        If LbNxStNum = 0 Then LbNxStNum = 10
        Dim LbNxSt = Me.Controls("LbNxSt" & LbNxStNum)

        LbNxSt.Text = (CInt(LbNxSt.Text) + 1).ToString()

        Dim txtSNum = (Math.Floor(n / 10) + 1) * 10
        Dim txtS = Me.Controls("txtS" & txtSNum)

        txtS.Text = (CInt(txtS.Text) + LbNxStNum).ToString()

        Dim txtDrawBNum = Math.Ceiling(n / 10)
        Dim txtDrawB = Me.Controls("txtDrawB" & txtDrawBNum)

        txtDrawB.Text = (CInt(txtDrawB.Text) + 1).ToString()

    Next

Next

我那里可能有一对一的错误,因此您可能需要进行调整。

如果Me不是容器,请将其更改为使用适当的面板/任何容器。