"Swing"

 Autor: Daniela Muñoz Muñoz
Competencia: Aplica las Ciencias de la ingeniería. (Nivel 1)
Palabras Clave: Programación, Java, BlueJ.

Descripción de la Actividad: A continuación les daré a conocer mi grata experiencia como estudiante de primer año de ingeniería civil en informática, en uno de mis laboratorios de Swing del programa BlueJ.
El propósito del laboratorio era: crear un programa con interfaz gráfica que solicite al usuario dos números enteros.El programa tiene que mostrar si ambos son positivo, ambos son negativos o si uno es positivo y otro negativo. 


Solución
La solución al problema es analizar la entrada y salida de los datos ingresados, ademas de dar como resultado solido el código del laboratorio.


Entrada:
-Cantidad: 2 datos.
-Tipo: Entero.
-Limitación: numero positivo o negativo y que sean  números enteros.

Salida de Datos:
-Cantidad:   2 datos.
-Tipo: Palabras (ambos negativos, ambos positivos, o si  uno es positivo y otro negativo) 
      
                           
CÓDIGO:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class posionega implements ActionListener
{private static final int VENTANA_ANCHO = 400;
private static final int VENTANA_ALTO = 300;
private static final int ANCHO_TEXTO = 30;
private static final FlowLayout ESTILO_LAYOUT = new FlowLayout();
private static final String LEYENDA ="Ingresar 2 numeros positivos o negativos";
private JFrame ventana= new JFrame("Ver si los numeros ingresados son positivos o negativos");
private JTextArea leyenda = new JTextArea(LEYENDA,1,ANCHO_TEXTO);

private JLabel num1Etiq = new JLabel("Primer Numero");
private JTextField num1Texto = new JTextField(ANCHO_TEXTO);

private JLabel num2Etiq = new JLabel("Segundo Numero");
private JTextField num2Texto = new JTextField(ANCHO_TEXTO);

  
private JLabel num4Etiq = new JLabel("El Segundo Numero es:");
private JTextField num4Texto = new JTextField(ANCHO_TEXTO);

  
private JLabel resulSenEtiq = new JLabel("La Media de los numeros ingresados es:");
private JTextField resulSenTexto = new JTextField(ANCHO_TEXTO);

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

public posionega()
    {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());
     resulSenTexto.setEditable(false);
     resulSenEtiq.setBackground(Color.white);
     botonCalcular.addActionListener(this);
     ventana.setLayout(ESTILO_LAYOUT);
     ventana.add(leyenda);
          ventana.add(num1Etiq);
          ventana.add(num1Texto);
          ventana.add(num2Etiq);
          ventana.add(num2Texto);
               ventana.add(resulSenEtiq);
               ventana.add(resulSenTexto);  
               ventana.add(botonCalcular); 
ventana.setVisible(true);
    }
public void actionPerformed(ActionEvent e){
String num1= num1Texto.getText();
double t = Double.parseDouble(num1);

String num2= num2Texto.getText();
double v = Double.parseDouble(num2);

String num3= ("es cero");
String num4= ("es cero");

if(t >= 0)
num3=("positivo");
else
num3= ("negativo");

if(v>=0)
num4=("positivo");
else
num4= ("negativo");



String output = String.valueOf("El primer numero es:"+ num3 + "El segundo numero es:"+num4);
 resulSenTexto.setText(output);

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

Reflexión
Al ver que se puede crear un un programa simple, utilizando las matemáticas a nivel de signos (positivo o negativo, según lo que quiera el usuario),ademas de poder incluir interfaz gráfica para hacer mas atractivo el programa, a la hora correr la aplicación, ayuda mucho a complementar los conocimientos y ademas poder darme cuenta de que se puede programar haciéndolo mas entretenido y visualmente mas bonito y atrayente, hacia algun espectador al que le pueda servir mi aplicación.