Mp mardoqueo informe tecnico tap

7
INSTITUTO TECNOLOGICO SUPERIOR FELIPE CARRILLO PUERTO ING. SISTEMAS COMPUTACIONALES. TOPICOS AVANZADOS DE PROGRAMACION MARDOQUEO MATEO PEDRO DOCENTE: DOC. NIELS ARANA CUEVA TAREA: INFORME TECNICO U1 4º SEMESTRE GRUPO A FECHA: 06-MARZO-2014.

description

PROGRAMACION CON EVENTOS

Transcript of Mp mardoqueo informe tecnico tap

Page 1: Mp mardoqueo informe tecnico tap

INSTITUTO TECNOLOGICO SUPERIOR FELIPE

CARRILLO PUERTO

ING. SISTEMAS COMPUTACIONALES.

TOPICOS AVANZADOS DE PROGRAMACION

MARDOQUEO MATEO PEDRO

DOCENTE:

DOC. NIELS ARANA CUEVA

TAREA:

INFORME TECNICO U1

4º SEMESTRE

GRUPO A

FECHA:

06-MARZO-2014.

Page 2: Mp mardoqueo informe tecnico tap

INTRODUCCION En esta unidad veremos como programar con eventos, a través de botones,

donde un evento es la respuesta a una acción provocada por el usuario o el

sistema, con el objetivo de agilizar y mejorar el diseño gráfico de algún

programa como veremos a continuación.

PRACTICA CALCULADORA

1. Se crea una clase Main la cual llamara a otra clase que se llama

VentanaCalculadora la cual contiene los códigos del evento.

package org.mardo.java.calculadora;

public class Main {

public static void main(String[] args) {

Calcu calculadora = new Calcu ();

calculadora.setVisible(true);

}

}

2. Se crea otra clase llamada Calcu.

package org.mardo.java.calculadora;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Font;

import java.awt.GridLayout;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTextField;

Page 3: Mp mardoqueo informe tecnico tap

import javax.swing.WindowConstants;

import javax.swing.border.EmptyBorder;

public class Calcu extends JFrame {

private static final long serialVersionUID = 1583724102189855698L;

JTextField pantalla;

double resultado;

//para guardar la operacion a realizar

String operacion;

// Los paneles donde colocaremos los botones

JPanel panelNumeros, panelOperaciones;

// Indica si estamos iniciando o no una operación

boolean nuevaOperacion = true;

// Constructor. Crea los botones y componentes de la calculadora

public Calcu() {

super();

setSize(250, 300);

setTitle("Calcu MARDO");

setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

setResizable(false);

// Aquí se dibuja sobre el panel

JPanel panel = (JPanel) this.getContentPane();

panel.setLayout(new BorderLayout());

pantalla = new JTextField("0", 20);

pantalla.setBorder(new EmptyBorder(4, 4, 4, 4));

pantalla.setFont(new Font("Arial", Font.BOLD, 25));

pantalla.setHorizontalAlignment(JTextField.RIGHT);

pantalla.setEditable(false);

pantalla.setBackground(Color.WHITE);

panel.add("North", pantalla);

//Se crea el panel de los numeros

Page 4: Mp mardoqueo informe tecnico tap

panelNumeros = new JPanel();

panelNumeros.setLayout(new GridLayout(4, 3));

panelNumeros.setBorder(new EmptyBorder(4, 4, 4, 4));

for (int n = 9; n >= 0; n--) {

nuevoBotonNumerico("" + n);

}

nuevoBotonNumerico(".");

panel.add("Center", panelNumeros);

// Aquí se crea el panes de los botones con sus respectivas operaciones

panelOperaciones = new JPanel();

panelOperaciones.setLayout(new GridLayout(6, 1));

panelOperaciones.setBorder(new EmptyBorder(4, 4, 4, 4));

nuevoBotonOperacion("+");

nuevoBotonOperacion("-");

nuevoBotonOperacion("*");

nuevoBotonOperacion("/");

nuevoBotonOperacion("=");

nuevoBotonOperacion("CE");

panel.add("East", panelOperaciones);

validate();

}

private void nuevoBotonNumerico(String digito) {

JButton btn = new JButton();

btn.setText(digito);

btn.addMouseListener(new MouseAdapter() {

@Override

public void mouseReleased(MouseEvent evt) {

JButton btn = (JButton) evt.getSource();

numeroPulsado(btn.getText());

}

});

panelNumeros.add(btn);

}

Page 5: Mp mardoqueo informe tecnico tap

private void nuevoBotonOperacion(String operacion) {

JButton btn = new JButton(operacion);

btn.setForeground(Color.RED);

btn.addMouseListener(new MouseAdapter() {

@Override

public void mouseReleased(MouseEvent evt) {

JButton btn = (JButton) evt.getSource();

operacionPulsado(btn.getText());

}

});

panelOperaciones.add(btn);

}

private void numeroPulsado(String digito) {

if (pantalla.getText().equals("0") || nuevaOperacion) {

pantalla.setText(digito);

} else {

pantalla.setText(pantalla.getText() + digito);

}

nuevaOperacion = false;

}

private void operacionPulsado(String tecla) {

if (tecla.equals("=")) {

calcularResultado();

} else if (tecla.equals("CE")) {

resultado = 0;

pantalla.setText("");

nuevaOperacion = true;

} else {

operacion = tecla;

if ((resultado > 0) && !nuevaOperacion) {

calcularResultado();

} else {

resultado = new Double(pantalla.getText());

}

}

nuevaOperacion = true;

Page 6: Mp mardoqueo informe tecnico tap

}

private void calcularResultado() {

if (operacion.equals("+")) {

resultado += new Double(pantalla.getText());

} else if (operacion.equals("-")) {

resultado -= new Double(pantalla.getText());

} else if (operacion.equals("/")) {

resultado /= new Double(pantalla.getText());

} else if (operacion.equals("*")) {

resultado *= new Double(pantalla.getText());

}

pantalla.setText(" " + resultado);

operacion = " ";

}

}

PRACTICA HOLA Y ADIOS

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

class Igu extends Frame{

// Se crean los botones que generaran una acción

Button hola, adios;

TextField campo_texto;

Igu (String nombre){

super(nombre);

hola= new Button("1");

adios= new Button("2");

campo_texto= new TextField(12);

FlowLayout diseñador= new FlowLayout();

setLayout(diseñador);

JLabel label = new JLabel("Example JFrame");

add(label);

add(hola);

add(adios);

add(campo_texto);

holaa h=new holaa();

hola.addActionListener(h);

Page 7: Mp mardoqueo informe tecnico tap

adioss a=new adioss();

adios.addActionListener(a);

Cerrar_ventana cerrar=new Cerrar_ventana();

this.addWindowListener(cerrar);

}

// Al presionar el botón 1 generara el evento “Hola”

class holaa implements ActionListener{

public void actionPerformed(ActionEvent e){

String resh ="Hola";

campo_texto.setText(resh);

}

}

//Al presionar el botón 2 generara el evento Adios

class adioss implements ActionListener{

public void actionPerformed(ActionEvent e){

String resa ="Adios";

campo_texto.setText(resa);

}

}

class Cerrar_ventana extends WindowAdapter implements

WindowListener{

public void windowClosing(WindowEvent e){

dispose();

System.exit(0);

}

}

}

class Principal{

public static void main (String []args){

Igu interfaz=new Igu("Saludos");

interfaz.setSize(300,100);

interfaz.setVisible(true);

}

}

CONCLUSION Los eventos en una programación, permite al programador diseñar un interfaz

gráfico como el usuario quiere ver su programa al finalizar la programación.