Patricio Aros

xd

lunes, 10 de octubre de 2011

Laboratorio Swing - Media Entre 3 Numeros

Ejemplo de Ventana con Swing Java
Autor: Patricio Aros Erices
Competencia: Desarrollo de software (Nivel 1).

Descripción de la actividad
    El problema en general es diseñar e implementar una clase en java que calcule la media entre 3 números, que es la media? la media es en simple palabras, el promedio. Por ejemplo tenemos en el liceo las notas 55 , 67, 70, y deberia devolvernos el promedio entre estas(64), pero bueno dentro de esto lo más interesante es el implemento de Swing, Las componentes Swing se identifican porque pertenecen al paquete javax.swing estos son paquetes que permiten que podamos crear las famosas ventanas, con las cuales podemos interactuar van de la mano con los paquetes AWT los cuales los llamamos java.awt.*; java.awt.event.*; desde NetBeans, BlueJ o alguna otra IDE para java.
    Swing existe desde la JDK 1.1 (como un agregado). Antes de la existencia de Swing, las interfaces gráficas con el usuario se realizaban a través de AWT (Abstract Window Toolkit), de quien Swing hereda todo el manejo de eventos. Usualmente, para toda componente AWT existe una componente Swing que la reemplaza, por ejemplo, la clase Button de AWT es reemplazada por la clase JButton de Swing (el nombre de todas las componentes Swing comienza con "J").fuente.
    Cabe mencionar que dentro de estos paquetes que usamos por lo general se usa una especie de receptor o "escuchador" debido a que esta esperando que nosotros presionemos o hagamos algo para que el programa se ejecute o realize su tarea principal . Es asi como usamos el metodo ActionListener siempre va con implements antes de él, estos 2 van luego del nombre del constructor , por ejemplo:

public class ejemplo implements ActionListener{

 Hay que decir que es sólo una especie de constructor donde creamos los objetos de lo que sera la ventana. Dentro del constructor anterior van metodos como:  JTextArea leyenda = new JTextArea("hola",1,20); Lo que creará una area de texto llamada leyenda donde ira la palabra hola y el cuadro que sigue tendra un max. de 20 caracteres para escribir.

A continuacion el codigo del ejercicio:


import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class excerOne implements ActionListener{
        private static final int VENTANA_ANCHO = 275;
        private static final int VENTANA_ALTO = 270;
        private static final int ANCHO_TEXTO = 20;
        private static final FlowLayout ESTILO_LAYOUT = new FlowLayout();
        private static final String LEYENDA ="Calculadora de promedios By: Pato";
        private JFrame ventana= new JFrame("Calcular promedios");
        private JTextArea leyenda = new JTextArea(LEYENDA,1,ANCHO_TEXTO);
        private JLabel tempEtiq = new JLabel("numero");
        private JTextField numeroP = new JTextField(ANCHO_TEXTO);
        private JLabel numeroPET = new JLabel("numero");
        private JTextField numeroS = new JTextField(ANCHO_TEXTO);
        private JLabel numeroSET = new JLabel("numero");
        private JTextField numeroT = new JTextField(ANCHO_TEXTO);
        private JLabel numeroEtiq = new JLabel("numero");
        private JTextField numeroN = new JTextField(ANCHO_TEXTO);

        private JButton botonCalcular = new JButton("Calcular");

        public excerOne(){
               ventana.setSize(VENTANA_ANCHO, VENTANA_ALTO);
               ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
               leyenda.setEditable(false);
               leyenda.setLineWrap(true);
               leyenda.setWrapStyleWord(true);
               leyenda.setBackground(ventana.getBackground());
               numeroN.setEditable(false);
        
               botonCalcular.addActionListener(this);
               ventana.setLayout(ESTILO_LAYOUT);
               ventana.add(leyenda);
               ventana.add(tempEtiq);
               ventana.add(numeroP);
               ventana.add(numeroPET);
               ventana.add(numeroS);
               ventana.add(numeroSET);
               ventana.add(numeroT);
               ventana.add(botonCalcular);
               ventana.add(numeroN);
              
               ventana.setVisible(true);
        }
        public void actionPerformed(ActionEvent e){
            String respuesta1= numeroP.getText();
            double a = Double.parseDouble(respuesta1);

            String respuesta2= numeroS.getText();
            double b = Double.parseDouble(respuesta2);
           
            String respuesta3= numeroT.getText();
            double c = Double.parseDouble(respuesta3);

            double promedio= (a+b+c)/3;
          
            String output = String.valueOf(promedio);
            numeroN.setText(output);

        }
        public static void main(){
            excerOne gui = new excerOne();
        }  
}


 
  
Aqui tenemos un  Screenshot de el programa en funcionamiento, del codigo anterior.













REFLEXION: 
Una más de las maravillosas herramientas al momento de desarrollar programas ya que son estos Swing lo que hace que aparesca la principal de todo, la ventana con la cual podemos interactuar de mejor manera y darle al usuario una mayor confortabilidad al momento de usar un programa.

0 comentarios:

Publicar un comentario