Saltar navegación

20250313 GUI_Ahorcado_2 - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 17 de marzo de 2025 por Raquel G.

6 visualizaciones

Descargar la transcripción

El evento de jugar está entonces. 00:00:00
Ahora nos falta el evento de la letra de usuario. 00:00:03
El evento de la letra de usuario que es este de aquí. 00:00:08
Entonces, el evento de letra de usuario, ¿qué tenemos que hacer? 00:00:13
Coger la letra de usuario. 00:00:16
Comprobar en qué posición está de la palabra aleatoria generada. 00:00:20
en las que esté, colocar esa letra 00:00:27
en el text field 00:00:29
si no está en ninguna, consumir 00:00:30
un intento, y luego añadir 00:00:33
esa letra a mi etiqueta 00:00:35
de letras usadas, por ejemplo 00:00:37
eso, y bueno, y luego si ha 00:00:39
ganado, porque se ha completado la letra 00:00:41
pues avisarle, que esa parte 00:00:43
creo que yo no la tengo, no la tenía 00:00:45
completada, pues venga 00:00:46
lo primero 00:00:49
cogemos la letra del usuario 00:00:49
ala 00:00:53
esta es mi letra 00:00:55
y volvemos a poner el text field donde he metido la letra vacío para que le sea más cómodo jugar. 00:00:56
La cogemos y lo volvemos a poner vacío para que le sea más cómodo jugar. 00:01:03
Ahora, con esta letra, recorremos la palabra posición por posición, recorremos la palabra, 00:01:08
y cada vez que encontremos una posición de mi palabra en la cual se encuentra un carácter igual al carácter que me han dado, 00:01:15
ves aquí que 00:01:26
el carácter que ha metido el tío 00:01:29
yo lo he guardado como string 00:01:31
porque lo he sacado del gettest 00:01:33
entonces para convertirlo en carácter 00:01:34
me tengo que sacar el characero 00:01:37
bueno pues voy posición por posición 00:01:38
de la palabra aleatoria 00:01:41
en cada posición 00:01:43
que me encuentre 00:01:45
en la que hay 00:01:47
un carácter igual al que 00:01:49
ha metido el tío 00:01:51
pues entonces en esa 00:01:52
misma posición de mi text field 00:01:55
en esa misma posición de mi text field 00:01:57
en esa misma, en la i 00:02:00
pongo esa letra 00:02:01
y la estoy poniendo en mayúsculas pues para 00:02:03
que quede más bonito simplemente 00:02:05
pongo esa letra y la pongo en mayúsculas 00:02:07
y además aviso ya 00:02:09
con este boolean de que 00:02:11
ha acertado porque 00:02:13
existe esa letra en la palabra 00:02:15
aviso ya con ese boolean 00:02:17
y luego que es lo que he hecho 00:02:19
pues al label que 00:02:25
tiene las usadas 00:02:26
al label que tiene las usadas, cojo las que ya tenía 00:02:27
de antes, le concateno la letra nueva 00:02:32
y pongo en ese label todo ese texto de nuevo, toda esa actualización. 00:02:35
¿Vale? Hecho eso. 00:02:41
Cojo las usadas de antes, concateno la letra 00:02:45
nueva y ese texto se lo pongo en el label para que me aparezcan 00:02:48
las usadas. Cambiado a mayúscula pues para que se vea mejor. 00:02:52
ahora, que es lo que más 00:02:56
tengo que ver, si el usuario 00:03:00
con esa letra 00:03:01
acertó o no acertó 00:03:04
pues para eso tenía el boolean 00:03:06
si no acertó 00:03:08
le digo, oye no contiene 00:03:10
la letra 00:03:12
disminuyo el número de intentos 00:03:13
y si ya ha llegado 00:03:16
a cero, le digo 00:03:20
perdiste 00:03:22
perdiste y ya está 00:03:23
y ahora desde aquí 00:03:25
es donde podría, bueno 00:03:28
ahora es donde desde aquí 00:03:30
tendría yo que hacer el reset 00:03:32
que es la parte que no he hecho, que es volver a ocultarlo 00:03:34
todo y volver a poner 00:03:36
el botón jugar 00:03:38
¿verdad? volver a hacer el reset 00:03:39
¿vale? ¿está claro lo que he hecho en este método? 00:03:42
he ido parte 00:03:49
por parte, he cogido la letra de usuario 00:03:50
se te ha caído una bufanda Ana 00:03:52
blanca además 00:03:54
he cogido la letra de usuario, he vuelto a 00:03:55
poner el espacio a cero 00:03:59
el espacio donde el usuario mete la letra 00:04:01
he ido posición por posición 00:04:03
de la palabra a ver si en alguna 00:04:06
posición estaba esa letra 00:04:07
en la posición en la que estuviera 00:04:09
lo pongo en el text field 00:04:12
correspondiente y aviso 00:04:14
que la encontré 00:04:16
actualizo el label de letras usadas 00:04:17
y ahora ya, que esa letra 00:04:20
no estaba 00:04:24
le aviso que no contiene la letra 00:04:25
disminuyo el número de intentos 00:04:28
y si ha llegado a cero le aviso 00:04:30
y vamos a hacer un reset del juego 00:04:33
entonces voy a hacer aquí un método aparte 00:04:35
reset juego 00:04:39
un método aparte para no poner ahí todo el código 00:04:40
este método está aquí 00:04:43
reset juego 00:04:45
y aquí en este método aparte 00:04:47
reset juego 00:04:49
pues voy a hacer el reset del juego 00:04:50
que es volver a poner el reset del juego 00:04:52
será la palabra volver a ponerla null 00:04:54
el botón jugar 00:04:57
volver a ponerle 00:05:00
a jugar 00:05:02
y volver a habilitarlo 00:05:04
no puedes que 00:05:11
no porque son lineajes que están por ahí sueltas 00:05:13
botón jugar 00:05:18
punto vamos a volver a habilitarlo 00:05:19
sedenable true 00:05:21
vamos a ocultar todos los text 00:05:22
fill 00:05:25
todos los text fill ocultados 00:05:26
letras de i 00:05:36
punto set 00:05:43
visible 00:05:45
falso 00:05:47
oculto también la etiqueta esta 00:05:50
que me decía lo del usuario 00:05:54
entre letra y la letra de usuario 00:05:56
esta no la había 00:05:58
cambiado el nombre 00:06:00
así que creo que se llamaba 00:06:01
el new label 00:06:04
set visible 00:06:05
falso 00:06:10
oculto también la letra usuario 00:06:11
visible 00:06:21
falso 00:06:29
y pongo las letras usadas a cero 00:06:30
otra vez, letras usadas 00:06:32
con suerte se llamaba así 00:06:34
no, no se llamaba así 00:06:36
letra usada 00:06:37
usadas 00:06:40
con la s 00:06:43
al final 00:06:44
usadas.sectest 00:06:45
creo que ya está 00:06:49
todo reiniciado, hemos puesto el 00:06:52
botón a jugar y habilitado 00:06:54
hemos escondido las áreas de texto 00:06:56
y la letra de usuario 00:06:58
y hemos puesto este, con esto ya 00:07:01
el número de intentos se reinicia otra vez 00:07:02
ah no, porque al darle a jugar 00:07:05
ya se pone, vale 00:07:07
pues ya está 00:07:08
ya reset juego y ya está 00:07:09
y aquí también me falta en mi código 00:07:12
si ha acertado la palabra 00:07:16
la verificación de si la palabra está acertada 00:07:18
no la he hecho 00:07:20
entonces, esto 00:07:23
lo añadís vosotros 00:07:28
falta verificar 00:07:30
si se ha completado la palabra 00:07:35
en caso 00:07:37
de que se haya completado 00:07:45
se avisa 00:07:47
y se hace reset también 00:07:54
esto es lo que faltaría para que estuviera ya 00:07:56
completo 00:08:06
verificar si se ha completado la palabra 00:08:07
si todos los textfield 00:08:13
si la palabra está completa 00:08:14
si se ha completado 00:08:17
se avisa y se llama reset juego también 00:08:19
para que se resete 00:08:21
¿cómo podríais verificar 00:08:22
si se ha completado la palabra? 00:08:25
¿cómo podríais verificarlo? 00:08:30
claro 00:08:40
se podría 00:08:40
recorrerlos y en el momento que 00:08:41
encuentras uno vacío no se ha verificado 00:08:44
pero depende, si la palabra es más corta 00:08:46
que todos los que hay 00:08:48
ya bueno pero 00:08:49
no pero tú vas a numletras igualmente 00:08:51
Claro, entonces 00:08:54
¿Lo hacemos? ¿Ya lo dejamos completo? 00:08:55
¿No? Venga, ya lo dejamos 00:08:58
Entonces esto lo podríamos hacer 00:09:00
Vamos a verificarlo 00:09:02
Vamos a verificar 00:09:03
También se podría hacer como lo has hecho tú 00:09:06
Claro, claro 00:09:08
Lo que pasa es que yo en mi caso no puedo hacerlo así 00:09:09
Porque yo tengo más campos 00:09:11
Pero ¿y nosotros también? 00:09:14
Ah, tú tienes más visibles 00:09:17
Bueno, pero puedes llegar tú hasta el tamaño 00:09:18
De la palabra oculta 00:09:20
Claro, puedes hacer un for, entonces aquí podríamos hacer 00:09:21
desde int i igual a 0 00:09:24
mientras i sea menor 00:09:27
que palabra punto lens 00:09:28
incrementando i 00:09:31
claro, si 00:09:34
letras 00:09:37
de i, a ver, vamos a poner el 00:09:39
boolean 00:09:41
adivinada 00:09:41
vamos a asumir que de partida la ha adivinado 00:09:45
y si encontramos uno que está vacío 00:09:47
es que no lo ha adivinado 00:09:49
claro, es que al revés es más 00:09:50
complicado. Si letras de i 00:09:53
punto get test 00:09:55
punto 00:09:57
equals 00:09:59
equals vacío 00:10:00
entonces 00:10:05
bueno, vamos a ponerle antes 00:10:07
si letras de i 00:10:09
punto get test diferente de null 00:10:11
para que no la caguemos con un null pointer exception 00:10:14
to get test 00:10:17
diferente de 00:10:22
null y 00:10:24
además de ser diferente de null 00:10:25
es también 00:10:28
diferente del vacío 00:10:30
pues en ese caso 00:10:32
adivinada igual a 00:10:33
falsa 00:10:36
y ahora ya, cuando este fuera terminado 00:10:37
que ha terminado aquí, ahora ya 00:10:39
si adivinada 00:10:42
adivinada 00:10:44
pues le decimos 00:10:47
acertaste 00:10:49
ganaste 00:10:50
y reset 00:11:07
juego también, ¿vale? 00:11:15
Entonces, la comprobación 00:11:24
de adivinada tiene que hacerle solo 00:11:25
si no ha 00:11:27
completado los intentos. 00:11:29
Entonces, aquí le vamos a poner 00:11:33
un retun 00:11:34
para que si ha completado el número 00:11:36
de intentos ya no verifique nada. 00:11:40
Vamos a ponerle aquí un retun. 00:11:43
Un retun para que si ha 00:11:47
llegado a cero, reinicie 00:11:48
el juego, perdiste y ya está. 00:11:50
Y luego ya verifica 00:11:53
se ha completado la palabra. No vaya a ser 00:11:54
que haya completado el número de intentos 00:11:56
en el momento de acertar la palabra 00:11:59
y entonces me diga la perdiste y luego ganaste 00:12:00
y es un lío. 00:12:02
Bueno, pues ahora yo creo que ya 00:12:05
estaría todo. 00:12:06
Iniciamos el juego. 00:12:11
Este tiene tres solo. 00:12:13
Res. 00:12:17
A la primera. 00:12:23
Ganaste 00:12:25
y efectivamente después de ganar 00:12:26
reinicia juego. 00:12:29
¿Veis? Una cosa que me ha faltado 00:12:31
Volverlas a poner a cero de nuevo 00:12:34
Reiniciar juego 00:12:35
Le ha faltado volverlas a poner a cero 00:12:36
Reiniciar juego 00:12:40
Reset juego 00:12:44
Le falta volverlas a poner a cero 00:12:45
Set test 00:12:47
Ahora ya sí que 00:13:12
Se queda con 00:13:25
Uy, ¿qué hago yo? Aquí no, claro 00:13:27
A, reloj, seguramente, justo, reloj. 00:13:29
vale, ganaste 00:14:09
y reinicia el juego 00:14:12
vale 00:14:14
bueno, pues yo creo 00:14:14
que ahora ya sí que estaría completo 00:14:18
bueno, pues con esta 00:14:19
tontería de juego 00:14:22
hemos revisado muchas cosas y habéis podido 00:14:23
repasar algunas otras cosas 00:14:26
ahora hay que hacer aplicaciones más grandes 00:14:27
para poder integrar lo de las colecciones, los mapas 00:14:30
todo eso, porque es que si no 00:14:32
se nos olvida lo importante 00:14:33
y el JavaFX 00:14:35
¿Tienes planeado usar el map? 00:14:38
Claro. 00:14:51
Utilísimo para cualquier aplicación que tengas 00:14:52
un montón de datos. 00:14:54
Bueno, ¿algún problema? 00:14:56
Vale. 00:15:01
Bueno, pues una vez hecho esto, 00:15:02
los cuatro primeros son chorradas 00:15:04
que tardaréis nada en hacerlo 00:15:07
este es 00:15:09
para explorar 00:15:11
vosotros un componente nuevo 00:15:13
el combo box 00:15:15
y este también es para explorar vosotros 00:15:16
otra cosa que es el 00:15:19
J file chooser 00:15:21
vale, esto es 00:15:22
para explorar eventos 00:15:24
que no sean por 00:15:27
defecto, sino que sean de ratón 00:15:29
y esto ya son aplicaciones más 00:15:30
grandes para que podamos 00:15:33
explorar, menús, barras de menú 00:15:35
Pestañitas, otras cosas 00:15:37
Pues bueno 00:15:39
Los cuatro primeros más al arcado 00:15:42
Se da por visto 00:15:46
¿Alguien ha hecho el 5? 00:15:46
Por ejemplo 00:15:49
Para ver rápidamente 00:15:49
Lo del combo box 00:15:53
Pues venga 00:15:54
Vamos a hacer 00:16:00
Bueno, os arrancáis vosotros 00:16:03
Pero vamos a hacer nosotros aquí 00:16:05
5, 6 y 7 00:16:07
para ver un poco la dinámica de componentes nuevos 00:16:08
y todo eso 00:16:11
y luego ya planteamos estas aplicaciones 00:16:11
para que las hagáis 00:16:14
pues venga 00:16:16
pasad de los cuatro primeros 00:16:20
si no los habéis hecho porque son chorradas 00:16:23
y si habéis hecho esto 00:16:25
cinco directamente 00:16:26
Materias:
Programación
Niveles educativos:
▼ Mostrar / ocultar niveles
  • Formación Profesional
    • Ciclo formativo de grado superior
      • Primer Curso
Subido por:
Raquel G.
Licencia:
Todos los derechos reservados
Visualizaciones:
6
Fecha:
17 de marzo de 2025 - 10:24
Visibilidad:
Clave
Centro:
IES ROSA CHACEL
Duración:
16′ 36″
Relación de aspecto:
1.78:1
Resolución:
1920x1080 píxeles
Tamaño:
79.46 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid