要在執行期間新增物件可以用 Load 指令
不過 VB 好像不能 LOAD 一個單獨的物件
你可以先拉一個當樣本
然後將那個樣本物件設定成陣列的第一個元素
利用那個物件來產生新的物件
試試這樣...
1.先拉一個要當樣本的物件(範例用 CommandButton )
2.將 Name 改成 cb
3.Index 屬性的值填上 0
複製程式
Option Explicit '強迫使用變數都必須宣告
Dim tmp As Integer '存放物件數量的變數
Private Sub cb_Click(Index As Integer)
tmp = cb.Count 'cb 這個物件陣列的物件數量
Load cb(tmp) '載入下一個物件(因為 Index 是從 0 開始算, 所以恰好下一個的 Index 就是 Count)
cb(tmp).Visible = True '將新物件的顯示屬性設成 True
cb(tmp).Caption = "cb(" & tmp & ")" '更改新物件標題
'↓指定新物件大小及位置
cb(tmp).Move 8, cb(tmp - 1).Top + cb(tmp - 1).Height + 8, cb(0).Width, cb(0).Height
End Sub
Private Sub Form_Load()
Me.ScaleMode = 3 '讓表單的繪圖單位以像素計算
End Sub
還有跟著游標的棋子Image改成以滑鼠游標來呈現應該會順暢些
圖檔也可以以資源檔的形式包夾在執行檔裡頭
這樣就不用把圖檔隨執行檔一同附上
也不用擔心檔案位置的問題了