Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Para que el juego finalice, hay que hacer que funcione la etiqueta Meta.Para ello, se agrega un controlador de eventos para el evento MouseEnter de la etiqueta.
[!NOTA]
Si ha completado el tutorial 1: Crear un visor de imagen, ya sabe qué son los controladores de eventos.La mayoría de los controles tienen muchos eventos diferentes que pueden generar.En el visor de imagen se utilizan el evento Click del control Button y el evento CheckChanged del control CheckBox.En este tutorial, se utiliza el evento MouseEnter del control Label, que se genera cada vez que el puntero del mouse entra en el control.El control Label tiene más de cuatro docenas de eventos.La mayoría de ellos tiene nombres intuitivos, como DoubleClick, Resize y TextChanged.Más adelante en este tutorial se proporciona una lista de nombres de evento.
Para obtener una versión en vídeo de este tema, vea tutorial 2: Crear un Laberinto en Visual Basic - vídeo 2 o tutorial 2: Crear un Laberinto en C# - vídeo 2.
Para finalizar el juego
Seleccione el control finishLabel y, a continuación, haga clic en el icono Evento en la parte superior de la ventana Propiedades, que representa un rayo.Al hacer clic en él, aparecen los eventos del control en lugar de sus propiedades.Puede volver a la lista de propiedades haciendo clic en el icono de propiedad.Por ahora, mantenga la ventana Propiedades como está, de modo que muestre todos los eventos del control finishLabel.Desplácese hacia abajo hasta el evento MouseEnter.Los iconos y el evento MouseEnter aparecen como sigue.
Icono de evento
.gif)
Icono de propiedad
.gif)
Evento MouseEnter
.png)
Haga doble clic en el palabra MouseEnter.Después de hacerlo, el IDE agrega automáticamente un método de control de eventos al formulario y muestra el editor de código, como sigue.
Private Sub finishLabel_MouseEnter(sender As System.Object, e As System.EventArgs) Handles finishLabel.MouseEnter End Subprivate void finishLabel_MouseEnter(object sender, EventArgs e) { }Este método de control de eventos se ejecuta cada vez que el puntero del mouse entra en la etiqueta.
Queremos que el programa abra un cuadro de mensaje que felicite al usuario y que, a continuación, se cierre el programa.Para ello, se agregan líneas de código (con un comentario), como sigue.
Private Sub finishLabel_MouseEnter(sender As System.Object, e As System.EventArgs) Handles finishLabel.MouseEnter ' Show a congratulatory MessageBox, then close the form. MessageBox.Show("Congratulations!") Close() End Subprivate void finishLabel_MouseEnter(object sender, EventArgs e) { // Show a congratulatory MessageBox, then close the form. MessageBox.Show("Congratulations!"); Close(); }[!NOTA]
El método finishLabel_MouseEnter() tiene dos instrucciones.La primera instrucción consiste en llamar a un método denominado Show(), que abre un cuadro de mensaje que contiene cualquier texto que haya escrito entre los paréntesis.
Puede obtener más información sobre lo que sucede utilizando el IDE para explorar el código.Coloque el puntero del mouse de modo que se encuentre encima de la palabra MessageBox.Debería aparecer la siguiente información sobre herramientas.
Tooltip
.png)
[!NOTA]
El IDE muestra que hay una clase denominada System.Windows.Forms.MessageBox, y que el método Show() al que ha llamado se encuentra dentro de esa clase.No se requieren conocimientos completos para que el cuadro de mensaje funcione, pero la información adicional puede resultar útil.
Con respecto a la segunda instrucción, cada formulario tiene un método integrado denominado Close() que hace que el formulario se cierre.Algunos programas tienen varias ventanas entre las que el usuario puede alternar.Cuando se trabaja en un programa de ese tipo, este cierra la ventana activa pero en ejecución el resto del programa.(Por ejemplo, si tiene varios documentos de Microsoft Office Word abiertos al mismo tiempo, al cerrar una ventana de documento se cierra ese documento, pero Office Word permanece abierto.) Sin embargo, en un programa como este, donde hay una sola ventana, al cerrarla se deja de ejecutar el programa; por consiguiente, al cerrar el formulario, se cierra el programa.
Guarde y ejecute el programa.Mueva el puntero del mouse sobre la etiqueta Meta.Debería abrir el mensaje y, a continuación, cerrar el programa.
Para continuar o revisar
Para ir al siguiente paso del tutorial, vea Paso 4: Agregar un método para reiniciar el juego.
Para volver al paso anterior del tutorial, vea Paso 2: Compilar el laberinto mediante etiquetas.