[.NET] vb動態產生物件修改
想請問各位大大,目前小弟有一隻程式是動態產生物件
動態產生物件的方式放在一個sub裡,
然後放一個timer去異動該物件的屬性,但是想不出來
該如何在timer裡去修改sub所產生的物件?(在timer裡不想要異動到全部的,只要異動指定的)
詳細程式碼如下:
Public Sub createobj()
Dim count as Integer = 10 //設定動態產生的數量
Dim button1(count) As Button //動態產生button
For i = 0 To count - 1
button1(i) = New Button
//設定button的屬性
With button1(i)
.Name = "button1" & i
.Image = WindowsApplication1.My.Resources.Resources.machine_s
.Width = 144
.Height = 60
.Location = New Point(10, 80)
.Enabled = False
End With
//將動態產生的button放在GroupBox裡
GroupBox(i).Controls.Add(button(i))
Next
End Sub
//timer
Private Sub re_connect_time_Tick(sender As System.Object, e As System.EventArgs)
Handles re_connect_time.Tick
//想在到數時間到時,去將剛剛createobj()所產生的button屬性中的Enable改為True,
這段不知道怎麼寫?
End Sub
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.163.245.121
※ 編輯: cf1064 來自: 118.163.245.121 (12/31 16:37)
→
01/01 22:26, , 1F
01/01 22:26, 1F
→
01/01 22:26, , 2F
01/01 22:26, 2F
可是因為button是動態產生的,所以如果我在re_connect_time_Tick裡
打button1(i).enable=true,會出現錯誤0.0
※ 編輯: cf1064 來自: 118.163.245.121 (01/02 11:11)
→
01/02 14:25, , 3F
01/02 14:25, 3F
→
01/02 14:26, , 4F
01/02 14:26, 4F
→
01/02 14:26, , 5F
01/02 14:26, 5F
好吧,那就隨便吧,我再去藍色小鋪找找好了
※ 編輯: cf1064 來自: 114.39.165.11 (01/02 20:47)
→
01/03 03:05, , 6F
01/03 03:05, 6F
→
01/03 03:05, , 7F
01/03 03:05, 7F
→
01/03 03:05, , 8F
01/03 03:05, 8F
有想過把button宣告成全域變數,
但是其實button陣列裡面的值是由sql搜尋出來
的總筆數決定並不是固定的,在最上面也只能放宣告而己
※ 編輯: cf1064 來自: 118.163.245.121 (01/03 10:44)
→
01/03 15:18, , 9F
01/03 15:18, 9F
→
01/03 15:18, , 10F
01/03 15:18, 10F
最後是在全域變數中宣告button陣列,不給陣列值,然後在create的function裡
redim該button並給予button陣列值,如此就可以在其他sub裡去設定陣列中的屬性了
※ 編輯: cf1064 來自: 118.163.245.121 (01/06 10:21)
Visual_Basic 近期熱門文章
PTT數位生活區 即時熱門文章