¿Cómo escribir un juego de rompecabezas usando VB?
Dim i como entero'definir variable de bucle
Dim j como entero
Dim paso como entero
Dim x(8 ) As Integer 'Definir una matriz para guardar números aleatorios
Private Sub Command1_Click()?
init 'Inicializar el juego
Command1.Enabled = False 'Desactivar Botón de inicio
Finalizar sub
Sub privado Form_Load()?
Aleatorizar'Iniciar el generador de números aleatorios
Fin Sub
Sub init()'Inicializa la subrutina del juego
For i = 0 To 7'Genera 8 números aleatorios no repetidos (del 0 al 7)
a0: x (i)=Int(Rnd*8)
Para j = 0 a i - 1
Si x(i) = x(j) entonces vaya a a0
Siguiente
Siguiente
Para i = 0 a 7
Imagen1(i).Enabled = True 'Habilitar Imagen1 para responder a eventos del mouse
Image1(x(i)).Picture = PictureClip1.GraphicCell(i) 'Haz que las 8 celdas de la imagen proporcionen cada una 8 controles de imagen
Siguiente paso
Imagen1 (8).GraphicCell(i) 'Hacer que Imagen1 responda a eventos del mouse
Imagen1(x(i)).Picture = PictureClip1.GraphicCell(i)"")'Espacio vacío para mover la imagen p >
End Sub
Subimagen privada1_Click(Index As Integer)'Preste atención al uso de valores de índice
Seleccione Case Index Mod 3'Divida 9 controles de imagen en tres columns p>
Caso 0'Cuando el mouse hace clic en la columna 1
Si Image1(Index 1).Picture = LoadPicture("") Entonces'Juzga si el lado derecho está vacío p>
Imagen1(Index 1).Picture = Image1(Index).Picture'Cambiar la imagen
Imagen1(Index).Picture = LoadPicture("") win'Prueba si el rompecabezas es válido !
Finalizar si
Caso 1'Cuando el mouse hace clic en la columna 2
Si Imagen1(Índice - 1).Imagen = LoadPicture("")Entonces' Determine si el lado izquierdo está vacío
Imagen1(Index - 1).Picture = Image1(Index).Picture
Imagen1(Index).Picture = LoadPicture("") p>p>
ganar<
/p>
End If
If Imagen1(Índice 1).Imagen = LoadPicture("")Entonces 'Determina si el lado derecho está vacío
Imagen1(Índice 1) . Index).Imagen
Imagen1(Index).Picture = LoadPicture("")
ganar
Finalizar si
Caso 2 ' Cuando el mouse hace clic en la columna 3
Si Imagen1(Index - 1).Imagen = LoadPicture("")Entonces 'Determine si el lado izquierdo está vacío
Imagen1(Index - 1 ).Picture = LoadPicture("")Luego 'Determinar si el lado izquierdo está vacío
Imagen1(Index - 1).Picture = LoadPicture("")