看板 Visual_Basic 關於我們 聯絡資訊
小弟我是跟新手 借了本書照上面的範例練習 遇到了點小問題請板上高手指導 -------------------------------------------- 此範例為一英文單字測驗程式 編碼如下: Public Class Form1 Dim ano(25) : Dim aans(25) : Dim aeng(25) : Dim achi(25) Dim aeng_25(25), achi_25(25), achi_25n(25), ano_25(25) As String Dim aeng_10(10), achi_10(10), achi_10n(10), ano_10(10) As String Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Me.Size = New Size(500, 500) addcon() readdata() showdata() End Sub Private Sub addcon() Dim mx1 = 20 : Dim my1 = 20 Dim mx2 = 35 : Dim my2 = 200 Dim mdx1 = 15 : Dim mdx2 = 90 : Dim mdx3 = 30 : Dim mdx4 = 200 Dim mdy1 = 30 : Dim mdy2 = 300 Dim mh = 30 : Dim mwn = 15 : Dim mwc = 70 Dim mwa = 20 : Dim mwe = 150 For i = 0 To 4 For j = 1 To 5 Dim mno = i * 5 + j ano(mno) = New Label With ano(mno) .top = my1 + i * mdy1 .left = mx1 + (j - 1) * mdx2 .height = mh .Width = mwn .text = Chr(64 + i * 5 + j) End With achi(mno) = New Label With achi(mno) .top = my1 + i * mdy1 .left = ano(mno).left + mdx1 .height = mh .Width = mwc .text = "1234567890" End With Me.Controls.Add(ano(mno)) Me.Controls.Add(achi(mno)) Next Next For i = 0 To 4 For j = 1 To 2 Dim mno = i * 5 + j aans(mno) = New TextBox With aans(mno) .top = my2 + i * mdy1 .left = mx2 + (j - 1) * mdx4 .height = mh .Width = mwa .text = "X" End With aeng(mno) = New Label With aeng(mno) .top = my2 + i * mdy1 .left = aans(mno).left + mdx3 .height = mh .Width = mwe .text = "1234567890" End With Me.Controls.Add(aans(mno)) Me.Controls.Add(aeng(mno)) Next Next End Sub Private Sub readdata() Dim mfile As String Dim aline As Array mfile = My.Computer.FileSystem.ReadAllText("voca.txt") aline = Split(mfile, vbNewLine) Dim mline = UBound(aline) Randomize() Dim gen As New Random Dim mtmp As String For i = 0 To 24 Dim mmo = gen.Next(i, mline) mtmp = aline(mmo) aline(mmo) = aline(i) aline(i) = mtmp Dim atmp = Split(aline(i), ",") aeng_25(i + 1) = atmp(0) achi_25(i + 1) = atmp(1) achi_25n(i + 1) = atmp(1) ano_25(i + 1) = Chr(64 + i + 1) Next For i = 1 To 10 Dim mmo = gen.Next(i, 25) Dim mtmp1 = aeng_25(mmo) aeng_25(mmo) = aeng_25(i) aeng_25(i) = mtmp1 Dim mtmp2 = ano_25(mmo) ano_25(mmo) = ano_25(i) ano_25(i) = mtmp2 Dim mtmp3 = achi_25(mmo) achi_25(mmo) = achi_25(i) achi_25(i) = mtmp3 aeng_10(i) = aeng_25(i) : ano_10(i) = ano_25(i) : achi_10(i) = achi_25(i) Next End Sub Private Sub showdata() For i = 1 To 25 achi(i).text = achi_25(i) Next For i = 1 To 10 aeng(i).text = aeng_25(i) Next End Sub End Class 小弟我在最後一行 For i = 1 To 10 aeng(i).text = aeng_25(i) Next 一直會出現錯誤 把此行刪除又可以跑了(當然就沒辦法得到最終想要的結果) 麻煩板上高手指點迷 感恩阿 補上讀取文件:http://www.xun6.com/file/5ff433026/voca.txt.html ※ 編輯: tkdwind2006 來自: 115.43.168.216 (05/27 18:05)
Cypresslin:你的aeng(i).text指的是第i個Label所顯示的文字嗎? 05/27 21:44
tkdwind2006:是 05/27 22:59