2013-10-30 22 views
0

我工作的一個快速的項目我的VB類和我碰到的一個問題。我是新來的語言,所以我有我在做什麼知之甚少......目前,我有一個非常非常簡單的程序設置爲一個RSVP列表。我有它設置了一個TXT框插入一個名稱列表框和男/女單選按鈕有超過21複選框和一個提交按鈕發送該信息的列表框。我想要做的就是以某種方式結合一個循環計數器增加一個標籤,當每添加一個名字不言而喻,直到它到達15,它就會顯示一個消息框。這可能沒有任何用途的循環,但我只是想擠在某處,因爲這是一個任務的要求。包含一個簡單的for循環在VB

我的代碼(是的,我知道這是不好)

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

你是對的 - 沒有必要在這裏循環......但是,如果一個循環是一個「功能需求」,你可以只通過每次添加一個新的名字時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() 

再次 - 這是一個非常低效的操作,因爲它是有意義的只是保存每次計數並簡單地增加它。我可能會尋找更好的使用循環else

+0

某處的是,這是非常不必要的,哈哈,但是這正是我一直在尋找這樣非常感謝你! – user2934526