步驟 2:加入隨機物件和圖示清單
您需要使用兩個 new 陳述式來建立兩個物件,並將其加入至您的表單。 第一個是 Random 物件,就像是您用於數學測驗遊戲中的物件。 第二個是新物件:List 物件。
若要加入隨機物件和圖示清單
在您加入下列程式碼以建立清單之前,請考慮它的運作方式。
Public Class Form1 ' Use this Random object to choose random icons for the squares Private random As New Random ' Each of these letters is an interesting icon ' in the Webdings font, ' and each icon appears twice in this list Private icons = New List(Of String) From {"!", "!", "N", "N", ",", ",", "k", "k", "b", "b", "v", "v", "w", "w", "z", "z"}
public partial class Form1 : Form { // Use this Random object to choose random icons for the squares Random random = new Random(); // Each of these letters is an interesting icon // in the Webdings font, // and each icon appears twice in this list List<string> icons = new List<string>() { "!", "!", "N", "N", ",", ",", "k", "k", "b", "b", "v", "v", "w", "w", "z", "z" };
在 [方案總管] 中以滑鼠右鍵按一下 [Form1.cs],然後按一下功能表中的 [檢視程式碼],即可移至程式碼編輯器。 開始輸入前一個步驟中顯示的程式碼。 如果撰寫 Visual C# 程式碼,請務必將程式碼放在左大括號之後,而正好在類別宣告 (public partial class Form1 : Form) 的後面。 如果撰寫 Visual Basic 程式碼,請將程式碼放在類別宣告 (Public Class Form1) 的後面。
加入 List 物件時,請仔細查看開啟的 [IntelliSense] 視窗。 下列是 Visual C# 範例 (類似您在 Visual Basic 中加入清單時顯示的文字)。
IntelliSense 視窗
注意事項 如果您查看小型區段中的程式碼,就很容易了解。您的程式可以使用 List 物件來追蹤許多項目。清單可存放數字、true/false 值、文字或其他物件。您甚至可以擁有保有其他 List 物件的 List 物件。清單中的項目稱為「項目」(Element),而每個清單只能保有一種類型的項目。因此數字清單只可以保有數字,您無法將文字加入至此種清單。此外,您無法在將數字加入至 true/false 值的清單。
注意事項 當您使用 new 陳述式建立 List 物件時,必須告知該物件您想在其中保留的項目。這就是為什麼在 [IntelliSense] 視窗頂端的工具提示會顯示清單中的項目型別。而且,這就是 List<string> (在 Visual C# 中) 和 List(Of String) (在 Visual Basic 中) 的含意:它是一個保有字串的 List 物件。字串是程式用來存放文字的項目,該文字就是 [IntelliSense] 視窗右邊的工具提示所告訴您的內容。
請考慮為何在 Visual Basic 中必須先建立暫存陣列,但是在 Visual C# 中,您可以使用一個陳述式建立清單。 這是因為 Visual C# 語言具有「集合初始設定式」(Collection Initializer)。 在 Visual Basic 2010 中,您可以使用集合初始設定式。 不過,為了與舊版的 Visual Basic 相容,建議您使用上述程式碼。
注意事項 當您使用含有 new 陳述式的集合初始設定式時,在建立新的 List 物件之後,程式會以大括號內的內容來填入該物件。在這種情況下,您會取得名為 [圖示] 的字串清單,而且該清單將會初始化,使其包含十六個字串。每一個字串都是單一字母,而且會對應到標籤中的圖示。所以遊戲將會有一對驚嘆號、一對大寫字母 N、一對逗號等。您的 List 物件總共會有十六個字串,每一個字串適用於 TableLayoutPanel 中的每一個欄框。
注意事項 在 Visual Basic 中,您會得到相同的結果,但是字串會先放入暫存陣列中,然後該暫存陣列會轉換為 List 物件。陣列類似於清單,但有所不同,例如建立的陣列為固定大小。清單可以視需要壓縮和擴展,在此程式中這點很重要。
若要繼續或檢視
若要移到下一個教學課程步驟,請參閱步驟 3:將隨機圖示指派給每個標籤。
若要回到上一個教學課程步驟,請參閱步驟 1:建立專案並將資料表加入至表單。