-
برنامه پازل اعداد
سلام. این برنامه اعداد 1 تا 15 را به هم ریخته کرده و به شما اجازه میدهد که ظرف 5 دقیقه آن را درست کنید. با هر بار اجرا نحوه قرار گیری خانه ها تغییر می کند.
کد:
Private Sub command1_DragDrop(Index As Integer, Source As Control, X As Single, Y As Single)
If (Abs((command1(Index).Top - Label1.Top)) = 720 And command1(Index).Left = Label1.Left) Or (Abs((command1(Index).Left - Label1.Left)) = 1080 And command1(Index).Top = Label1.Top) Then
w = command1(Index).Left
t = command1(Index).Top
Call command1(Index).Move(Label1.Left, Label1.Top)
Call Label1.Move(w, t)
End If
End Sub
Private Sub Command20_Click()
End
End Sub
Private Sub Form_Activate()
Time = #12:00:00 AM#
End Sub
Private Sub Form_Load()
Dim k As Label
For l = 240 To 3480 Step 1080
For t = 240 To 3120 Step 720
k: Randomize Timer
i = Int(Rnd * 19)
If command1(i).Appearance = 1 Then
Call command1(i).Move(l, t)
command1(i).Appearance = 0
Else
GoTo k
End If
j = j + 1
If j = 19 Then Exit For
Next t
Next l
Randomize Timer
i = Int(Rnd * 19)
a1 = Label1.Top
a2 = Label1.Left
Label1.Left = command1(i).Left
Label1.Top = command1(i).Top
command1(i).Left = a2
command1(i).Top = a1
End Sub
Private Sub Label3_Change()
i = i + 1
End Sub
Private Sub Timer1_Timer()
Dim m As Boolean
For t = 240 To 3120 Step 720
For l = 240 To 3480 Step 1080
If command1(i).Left = l And command1(i).Top = t Then
m = True
i = i + 1
Else: m = False
End If
If i = 19 Then Exit For
Next l
Next t
If m = True And Label1.Left = 3480 And Label1.Top = 3120 And command1(16).Left = 240 And command1(16).Top = 3120 And command1(17).Left = 1320 And command1(17).Top = 3120 And command1(18).Left = 2400 And command1(18).Top = 3120 Then
MsgBox ("you win")
Timer1.Enabled = False
For i = 0 To 18
command1(i).Enabled = False
Timer3.Interval = 250
Next i
Timer2.Interval = 0
End If
End Sub
Private Sub Timer2_Timer()
s = DatePart("s", Now)
m = DatePart("n", Now)
If s = 1 And m = 5 Then
MsgBox ("game over...time out")
Label4.Visible = True
Label4.Caption = "Oh...you lose"
Label4.ForeColor = vbBlack
Timer2.Interval = 0
For i = 0 To 18
command1(i).Enabled = False
Next i
Else
If s < 10 Then
Label3.Caption = "0" & Second(Time)
Else
Label3.Caption = Second(Time)
End If
If m < 10 Then
Label2.Caption = "0" & Minute(Time) & ":"
Else
Label2.Caption = Minute(Time) & ":"
End If
End If
End Sub
Private Sub Timer3_Timer()
Label4.Caption = "you win"
If Label4.Visible = True Then
Label4.Visible = False
Else
Label4.Visible = True
End If
Randomize Timer
Label4.ForeColor = Rnd * QBColor(15)
End Sub
-
سلام:
این هم یک پازل دیگر
کد:
http://smn-soft.persiangig.com/Puzzle%20Game2.zip
-