詳述:在集合中使用 For Each...Next 迴圈
更新:2007 年 11 月
在本課程中,您將學習使用 For Each...Next 迴圈,在集合中執行迴圈。
在先前的課程中,您學會使用 For...Next 迴圈,按指定次數執行一段程式碼。Visual Basic 集合物件支援特殊類型的 For Each...Next 迴圈,可讓您用來對集合中的每個項目執行程式碼區塊,而不是按固定的次數執行該區塊。
加入 For Each...Next 迴圈
在上一個課程中,您以手動方式將球隊集合中 Players 物件的 Position 屬性值加入至 ComboBox 控制項。在該範例中這種作法雖然行得通,但並不是最佳作法:每一次加入新球員,您都必須更新 ComboBox 控制項的 Items 集合。
處理這種情形更好的作法是:使用 For Each...Next 迴圈,透過執行 team 集合迴圈,將 Position 值加入至 Items 集合。
在 For...Next 迴圈中,必須先宣告計數器變數;使用 For Each...Next 迴圈,則必須先宣告物件變數。以下程式碼示範 For Each...Next 迴圈。
Dim player As Persons.Players
For Each player In team
ComboBox1.Items.Add(player.Position)
Next
在本範例中,不管您有多少 Players,ComboBox1.Items.Add 方法都會為球隊集合中的每一個 Players 物件執行一次,而且 Position 值將加入清單中。
試試看!
若要在集合中執行迴圈
開啟上一個課程中的 Persons 專案。如果您並未儲存,請回到上一個課程,使用集合管理多個物件,完成該程序。
在 [方案總管] 中,選取 [PlayerTest] 專案中的 [Form1.vb] 節點,然後在 [檢視] 功能表中選擇 [設計工具]。
選取 ComboBox 控制項。然後,在 [屬性] 視窗中,選取 Items 屬性,並按一下 … 按鈕。
在 [字串集合編輯器] 中,刪除四個現有項目,然後按一下 [確定]。
按兩下這份表單,開啟 [程式碼編輯器]。
在 [程式碼編輯器] 中,於宣告區段 (在 team 的宣告下面) 中加入以下程式碼。
Dim player As Persons.Players For Each player In team ComboBox1.Items.Add(player.Position) Next
請按 F5 執行程式。請從下拉式清單中選取位置。該位置上的球員隨即顯示在訊息方塊中。
後續步驟
在本課程中,您在集合中使用了 For Each...Next 迴圈。在以下幾個課程中,您將建立另一種型別的物件 — 使用者控制項。
下一個課程:可視物件:建立第一個使用者控制項
請參閱
工作
參考
For Each...Next 陳述式 (Visual Basic)