Java-Tips: Establecer Y Aplicar Eventos A Los Botones Y Demás Componentes De Un Formulario
Wednesday, July 15, 2015
A la hora de crear un formulario JAVA, a este le asignamos componentes de forma organizada como: botones, ComboBox, cajas de texto, entre otros; sin embargo, cada uno de estos elementos no están de adorno o por que sí, pues cada uno de ellos cumple una función específica.
Hay varias formas en las que un usuario puede interactuar con estos componentes que hacen parte de un formulario, y cada una de ellas depende del dispositivo usado; es decir, a través del uso del Mouse (Ratón), usando el teclado, por medio del monitor (pantalla táctil), entre otros. Cada vez que se realiza esta interacción "Usuario - Componente formulario", se produce un determinado evento; es decir, cuando el usuario da clic sobre un elemento, o cuando está tipeando (escribiendo) en una caja (jTextField) o en un área de texto (jTextArea).
Hay varias formas en las que un usuario puede interactuar con estos componentes que hacen parte de un formulario, y cada una de ellas depende del dispositivo usado; es decir, a través del uso del Mouse (Ratón), usando el teclado, por medio del monitor (pantalla táctil), entre otros. Cada vez que se realiza esta interacción "Usuario - Componente formulario", se produce un determinado evento; es decir, cuando el usuario da clic sobre un elemento, o cuando está tipeando (escribiendo) en una caja (jTextField) o en un área de texto (jTextArea).
Una vez se lleve a cabo un determinado evento sobre un elemento de nuestro formulario, en muchos casos necesitaremos que se ejecute una acción, un ejemplo muy práctico y donde podremos notar esta necesidad, es cuando se da clic sobre un botón, o también que a medida que vamos escribiendo en un campo de texto se vaya verificado la cantidad de caracteres que se hayan escrito o los que faltan por escribir y alcanzar el límite que se haya determinado para ese jTextField (algo como lo que se hace a la hora de crear un Tweet en la red social Twitter).
Hay varios métodos que se encuentran clasificados de acuerdo a un determinado tipo de evento, y que se pueden aplicar en los componentes de nuestros formularios JAVA; entre los más utilizados, encontramos:
Hay varios métodos que se encuentran clasificados de acuerdo a un determinado tipo de evento, y que se pueden aplicar en los componentes de nuestros formularios JAVA; entre los más utilizados, encontramos:
*actionPerformed(): Se aplica para capturar una acción realizada sobre el componente, ej. Cuando se pulsa un botón, etc.
Usado principalmente en botones.
Hace parte del tipo de evento ActionEvent.
*mouseClicked(): Cuando se realiza un clic de ratón sobre el elemento.
Usado principalmente en botones y en la mayoría de componentes.
Hace parte del tipo de evento MouseEvent.
*keyReleased(): Para saber cuando el usuario ha liberado (soltado) un botón del teclado, luego de pulsarlo.
Usado principalmente en cajas de texto (jTextField).
Hace parte del tipo de evento KeyEvent.
*itemStateChanged(): Verifica el estado de un Ítem y/o elemento de un determinado componente; es decir, si ha sido seleccionado o no.
Usado principalmente en ComboBox.
Hace parte del tipo de evento ItemEvent.
Al igual que en anteriores capítulos de JAVA-Tips, realizaremos este ejercicio, utilizando NetBeans IDE (si aún no lo tienes puedes dirigirte a nuestra Zona de descargas, y dar clic en el icono "NetBeans IDE"):
Asignando un evento...
1-Darás clic derecho sobre el elemento al que deseas asignarle un evento; en este caso, es un jButton. Nos aparecerá un menú contextual, y nos ubicaremos sobre la opción "Events" (Eventos):
2-Después de que hayas realizado el paso anterior, podrás observar que aparecerán una serie de opciones (Tipos de Eventos), lo que deberás hacer es ubicar el puntero del mouse sobre el tipo de evento que contiene el método que necesitas.
En este ejemplo lo que queremos es asignar un método que capture el evento de la pulsación de un botón; por lo cual, nos ubicamos sobre el tipo de evento "Action", y damos clic sobre "actionPerformed":
2-Después de que hayas realizado el paso anterior, podrás observar que aparecerán una serie de opciones (Tipos de Eventos), lo que deberás hacer es ubicar el puntero del mouse sobre el tipo de evento que contiene el método que necesitas.
En este ejemplo lo que queremos es asignar un método que capture el evento de la pulsación de un botón; por lo cual, nos ubicamos sobre el tipo de evento "Action", y damos clic sobre "actionPerformed":
NOTA: También podrías haber escogido el tipo de evento "Mouse" y su método "mouseClicked" y obtendrás el mismo resultado cuando el usuario pulse sobre dicho botón.
3-Seguidamente se te mostrará la parte del código, donde ya el método "actionPerformed" se ha asignado a tu elemento jButton.
Sólo debes proseguir a borrar el comentario que está por defecto en dicho método, y colocar las líneas de código que deseas que se lleven a cabo, una vez el usuario pulse sobre dicho botón:
4-Ahora procede a ejecutar tu proyecto JAVA, pulsa el botón con el que has trabajado y se verá reflejado todo lo que hayas determinado en tu código.
NOTA: Una forma rápida de agregar el método "actionPerformed" a un componente, es dando doble clic sobre el elemento. Esto sólo funciona con este método, de modo que tendrás que realizar los pasos 1 y 2 para agregar otro tipo de eventos con sus métodos a los componentes de tus formularios JAVA.
Si deseas saber cómo establecer y aplicar eventos a los botones y demás componentes de un formulario, pero usando netamente código, puedes dirigirte al siguiente link:
"Código JAVA: Asignar eventos a un JButton, JComboBox y JTextField"
Si te perdiste el artículo anterior de "Crear y seleccionar la Clase Principal de un proyecto".
También te invitamos a seguir el Curso de JAVA: Cómo lo hago en JAVA?, aquí en UH T.I.S, tu Blog de tecnología.
Suscríbete a nuestro blog, vía Email o RSS; además puedes seguirnos a través de nuestras redes sociales como: Facebook, Twitter, YouTube y Google+.
Si te fue de gran ayuda esta información, no olvides compartirla con tus amigos y en las redes sociales.
Si tienes dudas o sugerencias al respecto, abajo puedes dejarnos tus comentarios.
Bendiciones...