我正在为我的VB课程开发一个快速项目,但我遇到了一个问题。我是语言的新手,所以我不知道我在做什么...目前我有一个非常非常简单的程序设置为RSVP列表。我设置了一个Txt框,用于在Listbox和Male / Female单选按钮中插入一个名称,其中包含Over 21 Check复选框和Submit按钮,以将此信息发送到Listbox。我想要做的是以某种方式合并一个循环来向Label添加一个计数器,当每个名称被添加时,它会一直向上,直到达到15,然后它将显示一个Messagebox。这可能没有任何用于循环,但我只是想在某个地方挤压它,因为它是分配的要求。
我的代码(是的,我知道它很差)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
End Sub
Private Sub SubmitBtn1_Click(sender As Object, e As EventArgs) Handles SubmitBtn1.Click
Dim NamesInput As String
NamesInput = NamesTxt1.Text
If GenderRdBtn1.Checked = False And GenderRdBtn2.Checked = False Then
MessageBox.Show("Please Select a Gender")
ElseIf GenderRdBtn1.Checked = True Then
MessageBox.Show("Congratulations! You Have RSVP'd as " & NamesInput)
Else
MessageBox.Show("Congratulations! You Have RSVP'd as " & NamesInput)
End If
If AgeChk1.Checked = True Then
NamesLstBox1.Items.Add(NamesInput & " / Over 21")
Else
NamesLstBox1.Items.Add(NamesInput)
End If
If GenderRdBtn1.Checked = False And GenderRdBtn2.Checked = False Then
NamesLstBox1.Items.RemoveAt(0)
End If
End Sub
感谢您的帮助!
答案 0 :(得分:0)
你是对的 - 这里不需要循环...但是,如果循环是一个“功能需求”,你可以在每次添加新名称时循环遍历NamesLstBox Items集合,迭代一个计数器,然后根据计数设置标签的值。
Dim Count as Integer
For Each i In NamesLstBox1.Items
Count += 1
If Count = 15 Then
'display message box
End If
Next
Label.Text = Count.ToString()
再次 - 这是一个非常低效的操作,因为每次保存计数并简单地增加它是有意义的。我可能会在其他地方寻找更好的循环使用