将多个数据输入文本框

时间:2016-08-22 12:30:49

标签: vb.net

我有一个整数变量和多个文本框。用户在这些文本框中输入数据并按下按钮。这些文本框中的数据保存为变量。然后,重置文本框并重复该过程,然后再将其保存为变量。这样做了很多次,从1到整数变量。我怎么能这样做,以便我可以将文本框中的每个变量放入一个数组中,以便对它们进行排序和搜索? 如果您有任何疑问,请询问。

这些是变量。用户输入noofcompetitors

Dim noofcompetitors As Integer
Dim surname(noofcompetitors) As String
Dim firstname(noofcompetitors) As String

然后,用户将姓氏和名字输入文本框noofcompetitors次。$favorites次。按钮单击时,文本框中的数据将插入到数组中。

我会试着解释一下我的所作所为。用户将整数变量输入到文本框中,显示几个新文本框。从那里,用户将数据输入这些文本框(例如姓氏,名字)。这些按钮单击时保存到单个变量数组中。文本框被重置,用户再次将数据输入文本框。然后将它们保存到数组中。这一直持续到数据输入整数变量次数(例如25次)。我不确定如何将它们输入到单个变量数组中,因为它们输入的次数会发生变化

2 个答案:

答案 0 :(得分:0)

我建议使用通用列表,并使用if语句检查添加的竞争对手数量是否超出了他们的要求。我显然不知道你的按钮被叫什么或文本框,所以我为你可以替换他们的名字。这是你想要的吗?

'These are your global variables
Dim noofcompetitors As Integer
Dim surname As List(of string)
Dim firstname As List(of string)

Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
  If (surname.count - 1) < noofcompititors Then
   surname.add(tbSurname.text)
   firstname.add(tbFirstname.text)
  Else
   Msgbox("Number of amount compititors succeeded") 'or whatever you want to do here
  End If
End Sub

答案 1 :(得分:0)

Imports System.Collections.Generics

Public Class Form1

    Dim GoThrough As Integer = 0 'This will go through the Array each time you click the add button
    Dim MyArray As Char() = New Char(4) {}

    Private Sub BtnAdd_Click(sender As Object, e As EventArgs) Handles BtnAdd.Click

        MyArray(GoThrough) = CStr(TextBox1.Text)
        ResizeArray()
        GoThrough += 1
        MyArray(GoThrough) = CStr(TextBox2.Text)
        ResizeArray()
        GoThrough += 1
        MyArray(GoThrough) = CStr(TextBox3.Text)
        ResizeArray()
        GoThrough += 1
        MyArray(GoThrough) = CStr(TextBox4.Text)
        ResizeArray()
        GoThrough += 1
        MyArray(GoThrough) = CStr(TextBox5.Text)
        ResizeArray()
        GoThrough += 1

    End Sub

    Private Sub ResizeArray()

        'Array Resizing

        For i As Integer = 0 To MyArray.Length - 1
            MessageBox.Show(MyArray(i).ToString()) 'Remove this message,its just for testing Purposes
         Next

        Array.Resize(MyArray, 3)

        For i As Integer = 0 To MyArray.Length - 1
            MessageBox.Show(MyArray(i).ToString()) 'Remove this message,its just for testing Purposes
        Next

    End Sub

End Class