Está en la página 1de 13

INSTITUTO TECNOLÓGICO DE SAN

ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

MATERIA:
Tópicos Avanzados de Programación

DOCENTE:
MTI. ANGELINA MÁRQUEZ JIMÉNEZ.

GRUPO:

404- A

REPORTE DE PRÁCTICA No. 3

INTEGRANTES:

ANGEL DE JESUS CARMONA COBAXIN


ALEJANDRA DEL CARMEN VICHI ORTIZ

PERIODO:

ENERO – JULIO 2021


INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

PRÁCTICA NO. 3

NOMBRE DE LA PRÁCTICA:

Control de componentes

OBJETIVO:

Emplear listeners de componentes indicados en la práctica para ejemplificar el


manejo de componentes gráficos de control.

FUNDAMENTO TEÓRICO:

Cuando el usuario de un programa o applet mueve el ratón, o hace un clic o usa


el teclado, genera un Evento. En Java los eventos, como cualquier otra cosa, se
representan como instancias u objetos de alguna clase. Para programar una
interfaz gráfica es necesario aprender a utilizar los eventos.

Los eventos son las acciones que puede realizar el usuario, al realizar un evento
se produce una serie de acciones. Por ejemplo, si el usuario pulsa un botón
llamado “Salir” cerrara la aplicación. Otro ejemplo muy usado es para validar texto
que introduzcamos en un campo de texto.

Los Listeners (oyentes o escuchadores en español) se encargan de controlar los


eventos, esperan a que el evento se produzca y realiza una serie de acciones.
Según el evento, necesitaremos un Listener que lo controle.
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

Cada Listener tiene una serie de métodos que debemos implementar


obligatoriamente, aunque solo queramos usar uno solo de ellos.

Los Listeners que usaremos estarán en el paquete java.awt.event.

Interfaz Métodos
ActionListener actionPerformed(ActionEvent)
AdjustmentListener adjustmentValueChanged(AdjustementEvent)
ComponentListener componentHidden(ComponentEvent)
componentMoved(ComponentEvent)
componentResized(ComponentEvent)
componentShown(ComponentEvent)
ContainerListener componentAdded(ContainerEvent)
componentRemoved(ContainerEvent)
FocusListener focusGained(FocusEvent)
focusLost(FocusEvent)
ItemListener itemStateChanged(ItemEvent)
KeyListener keyPressed(KeyEvent)
keyReleased(KeyEvent)
keyTyped(KeyEvent)
MouseListener mouseClicked(MouseEvent)
mouseEntered(MouseEvent)
mouseExited(MouseEvent)
mousePressed(MouseEvent)
mouseReleased(MouseEvent)
MouseMotionListener mouseDragged(MouseEvent)
mouseMoved(MouseEvent)
TextListener textValueChanged(TextEvent)
WindowListener windowActivated(WindowEvent)
windowClosed(WindowEvent)
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

windowClosing(WindowEvent)
windowDeactivated(WindowEvent)
windowDeiconified(WindowEvent)
windowIconified(WindowEvent)
windowOpened(WindowEvent)

Los listeners que usaremos estarán en el paquete java.awt.event (que debemos


importar antes de implementarlos) y nos podemos encontrar los siguientes:

 Nombre: ActionListener

Descripción: Se produce al hacer click en un componente, también si se pulsa


Enter teniendo el foco en el componente.

Método:

public void actionPerformed(ActionEvent e)

Eventos:

JButton: click o pulsar Enter con el foco activado en él.

JList: doble click en un elemento de la lista.

JMenuItem: selecciona una opción del menú.

JTextField: al pulsar Enter con el foco activado.

 Nombre: KeyListener

Descripción: Se produce al pulsar una tecla. según el método cambiara la forma


de pulsar la tecla.

Métodos:
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

public void keyTyped(KeyEvent e)

public void keyPressed(KeyEvent e)

public void keyReleased(KeyEvent e)

Eventos: Cuando pulsamos una tecla, según el listener:

keyTyped: al pulsar y soltar la tecla.

keyPressed : al pulsar la tecla.

keyReleased : al soltar la tecla.

 Nombre: FocusListener

Descripción: Se produce cuando un componente gana o pierde el foco, es decir,


que esta seleccionado.

Métodos: Recibir o perder el foco.

 Nombre: MouseListener

Descripción: Se produce cuando realizamos una acción con el ratón.

Métodos:

public void mouseClicked(MouseEvent e)

public void mouseEntered(MouseEvent e)

public void mouseExited(MouseEvent e)

public void mousePressed(MouseEvent e)

public void mouseReleased(MouseEvent e)

Eventos: Según el listener:

mouseClicked: pinchar y soltar.


INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

mouseEntered: entrar en un componente con el puntero.

mouseExited: salir de un componente con el puntero

mousePressed: presionar el botón.

mouseReleased: soltar el botón.

 Nombre: MouseMotionListener

Descripción: Se produce con el movimiento del mouse.

Métodos:

public void mouseDragged(MouseEvent e)

public void mouseMoved(MouseEvent e)

Eventos: Según el listener:

mouseDragged: click y arrastrar un componente.

mouseMoved: al mover el puntero sobre un elemento.

MATERIAL Y EQUIPO EMPLEADO:

Equipo: Lenovo Ideapad S340

Procesador: AMD Ryzen 5 - 3500U

Almacenamiento: 8 GB RAM y 256 GB SSD

Arquitectura: 64 bits

DESARROLLO:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

public class MiPrimerGUI2mod extends JFrame{ //nombre de la clase

public static void main(String args[]){ //método principal


MiPrimerGUI2mod obj= new MiPrimerGUI2mod();
try{
obj.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);

UIManager.setLookAndFeel("com.sum.java.swing.plaf.nimbus.NimbusLookAndFe
el");
}catch (Exception e){
e.printStackTrace();
}
obj.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
//cierra de la ventana

JLabel eti1 = new JLabel("NUmero1: ");


JLabel eti2 =new JLabel("NUmero2: ");
JLabel eti3 =new JLabel("Resultado=");
JTextField txtNum1 =new JTextField(9);
JTextField txtNum2 =new JTextField(9);
JButton btn1=new JButton("Calcular");
JButton btn2=new JButton("Clean");

MiPrimerGUI2mod(){
setTitle("Sumadora");
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

Container cp= getContentPane();


//Modificacion
cp.setLayout(new BoxLayout(cp,BoxLayout.Y_AXIS));
cp.setLayout(new FlowLayout());

//5,1,30,30
cp.setLayout(new GridLayout(5,1,30,30));
cp.add(eti1);
cp.add(txtNum1);
cp.add(eti2);
cp.add(txtNum2);
cp.add(btn1);
cp.add(btn2);
cp.add(eti3);

setSize(300,300);
setVisible(true);

btn1.addActionListener(new MiOyente());
btn2.addActionListener(new MiOyente());
}
class MiOyente implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource()==btn1){
int num1 = Integer.parseInt(txtNum1.getText());
int num2 = Integer.parseInt(txtNum2.getText());
int res= num1+num2;
eti3.setText("Su Resultado es="+res);
}
else {txtNum1.setText("");
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

txtNum2.setText("");
eti3.setText("Resultado=");
}
}
}
}

RESULTADOS:
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

Compilamos y ejecutamos
el código del programa.

En la interfaz están las


JLabel y los botones que
se les ha dado
inicialización en el código,
como se ve es una
calculadora que solo
realizará sumas.
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

Ingresamos los valores


que deseemos para hacer
el cálculo de nuestra
sumatoria.

Una vez ingresados los


dos números, el código
ejecuta la suma y arroja en
la interfaz nuestro
resultado.
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

CONCLUSIONES:

En Java, cada evento está representado por un objeto que es una subclase de la
clase EventObject en el paquete java.util. Cada subclase de EventObject
representa un tipo de evento particular. Por ejemplo:

 MouseEvent, para representar acciones del ratón: mover, arrastrar, hacer


clic en un botón del ratón, etc.
 KeyEvent, para representar acciones del teclado, esto es, pulsar teclas.
 ActionEvent, para representar una acción del usuario en la interfaz, por
ejemplo, pulsar un botón en la pantalla.

No obstante, en el modelo de eventos de Java, los EventObject no realizan


acciones por si mismos, sino que esos eventos son enviados a otro objeto
encargado de responder a un tipo de evento en particular. Estos objetos son los
que conocemos como listeners o "escuchadores", y existen diferentes listeners
que "escuchan" a los diferentes eventos, tales como los mouses listeners, key
listeners o action listeners.

Los listener no se implementan como clases en java, sino como interfaces. Una
interface sería entonces una colección de métodos que definen un
comportamiento en particular. De este modo, cualquier clase que suministre
información para dichos métodos puede declarar que implementa a dicho
interface.
INSTITUTO TECNOLÓGICO SUPERIOR DE SAN
ANDRÉS TUXTLA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

REPORTE DE PRÁCTICA TOPICOS AVANZADOS DE PROGRAMACIÓN

REFERENCIAS:

[1] Aguilar, L. J. (2010). Programación en c/c++ java y UML. México: McGraw Hill.

[2] Ceballos, F. J. (2010). JAVA 2: Curso de programación. Madrid: RA-MA.

[3] Dean, J. (2009). Introducción a la programación con Java. México: McGraw


Hill.

[4] Deitel, D. y. (2010). Java Cómo Programar. México: Prentice Hall

También podría gustarte