Your SlideShare is downloading. ×
Mp mardoqueo informe tecnico tap
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Mp mardoqueo informe tecnico tap

205
views

Published on

PROGRAMACION CON EVENTOS

PROGRAMACION CON EVENTOS

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
205
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 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.
  • 2. 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;
  • 3. 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
  • 4. 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); }
  • 5. 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;
  • 6. } 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);
  • 7. 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.