- Proceso.
- En este programa disponemos de dos dados (dado1 y dado2).
El Jugador 1 lanza los dados, saldrá un número del 1 al 6 en cada dado.
- Si la suma de los dos dados es igual a 7 (dado1 + dado2 = 7), entonces se incrementará los puntos del jugador que lo ha lanzado.
- Mediante ImageView se mostrarán los dibujos correspondientes a los dados.
- Los dibujos de los dados se encuentran en la carpeta Dados/Files (esta carpeta se reconoce en el programa mediante File.DirAsset)
- La carpeta Dados/Files, se ha creado cuando hemos guardado el programa, que en este caso he llamado Dados.
- Cada vez que un jugador lanza le dado, desaparece su botón:
Button1.Visible = True
Button2.Visible = False
o bien
Button1.Visible = False
Button2.Visible = True
- Aquí están los dibujos de los dados dados.zip
- Una vez más se recuerda que este programa es de iniciación, se podría haber realizado el mismo programa con distinta metodología, pero en nuestro caso solo se pretende dar unas nociones básicas de programación sin entrar en muchas profundidades, se intenta que el código sea facilmente entendible.
____________________________
- Designer. Layout.
dados.b4a
|
|
Elementos necesarios en el Designer - "Layout":
- Activity
- Button1.Text = Jugador 1
- Button2.Text = Jugador 2
- Button3.Text = Nueva Partida
- Label1.Text = Suma
- Label2.Text = 0
- Label3.Text = Puntos Jugador 1
- Label4.Text = 0
- Label5.Text = Puntos Jugador 2
- Label6.Text = 0
- ImageView1
- ImageView2
Mediante el icono (abajo derecha) de Files y Add Files he añadido los dibujos necesarios.
|
____________________________
- Código (copia y pega).
Código del programa Dados
|
' Activity module
Sub Process_Globals
' © Juan Antonio Villalpando
' juana1991@yahoo.com
End Sub
Sub Globals
Dim ImageView1, ImageView2 As ImageView
Dim Label1, Label2, Label3, Label4, Label5, Label6 As Label
Dim Button1, Button2, Button3 As Button
Dim dado1, dado2, suma As Int
Dim puntos1, puntos2 As Int
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("Layout")
Activity.Title = "© Juan Antonio - Dados"
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub Button1_Click
dado1 = Rnd(1,6)
dado2 = Rnd(1,6)
suma = dado1 + dado2
Label2.Text = suma
If suma = 7 Then
puntos1 = puntos1 + 1
Label4.Text = puntos1
End If
Select dado1
Case 1
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado1.gif")
Case 2
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado2.gif")
Case 3
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado3.gif")
Case 4
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado4.gif")
Case 5
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado5.gif")
Case 6
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado6.gif")
End Select
Select dado2
Case 1
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado1.gif")
Case 2
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado2.gif")
Case 3
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado3.gif")
Case 4
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado4.gif")
Case 5
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado5.gif")
Case 6
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado6.gif")
End Select
Button1.Visible = False
Button2.Visible = True
End Sub
Sub Button2_Click
dado1 = Rnd(1,6)
dado2 = Rnd(1,6)
suma = dado1 + dado2
Label2.Text = suma
If suma = 7 Then
puntos2 = puntos2 + 1
Label6.Text = puntos2
End If
Select dado1
Case 1
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado1.gif")
Case 2
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado2.gif")
Case 3
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado3.gif")
Case 4
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado4.gif")
Case 5
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado5.gif")
Case 6
ImageView1.Bitmap = LoadBitmap(File.DirAssets, "dado6.gif")
End Select
Select dado2
Case 1
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado1.gif")
Case 2
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado2.gif")
Case 3
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado3.gif")
Case 4
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado4.gif")
Case 5
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado5.gif")
Case 6
ImageView2.Bitmap = LoadBitmap(File.DirAssets, "dado6.gif")
End Select
Button1.Visible = True
Button2.Visible = False
End Sub
Sub Button3_Click
suma = 0
Label2.Text = 0
puntos1 = 0
Label4.Text = 0
puntos2 = 0
Label6.Text = 0
Button1.Visible = True
Button2.Visible = True
End Sub
|
____________________________
- Botón con imagen.
- Proceso.
Vamos a poner un botón (Button) con una imagen.
- Para ello en el Designer añadimos un nuevo View, en este caso un Button.
- Vamos a la carpeta donde está guardado el programa, supongamos que el programa es el Dado. Dentro de esta carpeta vamos a la subcarpeta Files. En la subcarpeta Files debemos haber guardado previamente las imágenes que van a contener el Button. En este caso he guardado los archivos fresa.gif, limon.gif y pera.gif. (Es conveniente que las imágenes tengan el tamaño del Botón).
Aquí vuelvo a poner esas tres imágenes: dibujos de las frutas
- Volvemos al Designer, nos situamos en el Button y Añadimos las imágenes que están en la subcarpeta Files(Add Images).
- Luego hacemos que las propiedades del Button quede como en la siguiente imagen (Button properties)...
- Enabled Drawable, es la imagen que aparecerá cuando el Botón esté habilitado y en reposo (Enabled = True)
- Disabled Drawable, es la imagen que aparecerá cuando el Botón esté deshabilitado ( Enabled = False)
- Pressed Drawable, es la imagen que aparecerá cuando el Botón esté habilitado y presionado (Enable = True)
- Además de la imagen también podemos poner un Texto y situarlo abajo, arriba o enmedio. (Vertical Alignement).
(Sin embargo no crea un buen efecto poner a la vez Imagen y Texto en el Botón, en todo caso, mediante un Editor Gráfico, podemos crear o modificar un dibujo escribiendo un Texto sobre él, el efecto será más aceptable).