1 数字排序小游戏 Option Explicit Dim Label2X As Integer '记录标签控件数组中要移动的标签控件左上角 X 的位置 Dim Label2Y As Integer '记录标签控件数组中要移动的标签控件左上角 Y 的位置 '让标签数组中的每个标签控件上显示的数字是随机的,无重复的 Private Sub Init() Randomize Dim a(7) As Integer Dim i As Integer, k As Integer Label1
Caption = "" For i = 0 To 7 a(i) = i Next For i = 0 To 7 k = Int(Rnd * 8) Do While a(k) = -1 'a(k)=-1 表示该数组元素对应的数字已经被使用过了 k = Int(Rnd * 8) '重新生成 k 的值,直到 a(k)的值不等于-1 Loop Label2(i)
Caption = Trim(Str(a(k))) a(k) = -1 'a(k)的值已经使用了,不能再用,重新赋值为-1 与其他的元素值相区别 2 Next i End Sub Private Sub Command1_Click() Dim x As Integer, y As Integer Dim z As Integer Init Picture1
Enabled = True '让空白标签Label1 出现的位置随机 Randomize '记录下空白标签Label1 的位置 x = Label1
Left y = Label1
Top z = Int(Rnd * 8) '将空白标签Label1 和标签控件数组任一控件交换位置 Label1