Translate

miércoles, 9 de octubre de 2013

Proyecto GUI en java en desarrollo con eclipse

Este es un proyecto que me he dado a la tarea de realizar poco a poco, por un amigo que me pidio un poco de ayudad con un proyecto igual, se trata inicialmente en logear un usuario con las opciones de registrar nuevo usuario e iniciar sesión, después de lograr esto pues pensare que funcionalidad aplicar, tal vez conectarlo a una base de datos (Workbench ), bueno en el camino veremos. 




Clase Login:


iimport javax.swing.*;

import java.awt.event.*; ///para la funcionalidad de los botones acep...cance...regi...


public class Login extends JFrame implements  ActionListener{
JLabel jlUser,jlPass;
JTextField jtUser;
JPasswordField jpPass;
JButton aceptar,cancelar,registrarse;


public Login() {///Constructor
super("Login");
Botones();///Llamo al metodo

///Configuro la ventana
setSize(420, 300);///Personalizo el tamaño 420*300(Ancho*altura)
setVisible(true);///Se hace visible
setLocationRelativeTo(null);///posiciona la ventana justo en el centro
//setDefaultCloseOperation(DISPOSE_ON_CLOSE);
}



///MetodoBOtones
public void Botones(){
this.setLayout(null);
jlUser =new JLabel("Usuario: ");
jlUser.setBounds(30, 40, 80, 20);

jtUser =new JTextField();
jtUser.setBounds(150, 40, 120, 20);

jlPass =new JLabel("Password: ");
jlPass.setBounds(30,70,80,20);

jpPass=new JPasswordField();
jpPass.setBounds(150, 70, 120, 20);

aceptar=new JButton("Aceptar");
aceptar.setBounds(60, 130, 90, 20);
aceptar.addActionListener(this);

cancelar=new JButton("Cancelar");
cancelar.setBounds(160, 130, 90, 20);
cancelar.addActionListener(this);

registrarse=new JButton("Registrarse");
registrarse.setBounds(260, 130, 120, 20);
registrarse.addActionListener(this);


///Agrego los botones
add(jlUser);
add(jtUser);
add(jlPass);
add(jpPass);
add(aceptar);
add(cancelar);
add(registrarse);
}///Cierra metodoBotones

public static void main(String[]arg){
Login l=new Login();

}

///Funcion botones
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==aceptar){
if(jtUser.getText().equals("") || jpPass.getText().equals("")){
JOptionPane.showMessageDialog(null,"Los datos estan incompletos","ERROR",JOptionPane.ERROR_MESSAGE);

}else{
if(jtUser.getText().equals("Alexis")&& jpPass.getText().equals("1088264375C")){
JOptionPane.showMessageDialog(null,"BIENVENIDO "+jtUser.getText());
}
}

}else{
if(e.getSource()==cancelar){
System.exit(0);
}

else {
if(e.getSource()==registrarse){
///llamo a la clase registrarse
registrarse r=new registrarse();

}

}
}
}


}///Fin clase



_________________________________________________________________________________

clase: registrar

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class registrarse extends JFrame implements ActionListener{
    ///Aqui creo una clase formulario para ingresar los datos de un nuevo usuario
 
JLabel jlnomb,jlpass;
JTextField jtnomb;
JPasswordField jppass;
JButton aceptar,cancelar;
public registrarse() {///Constructor 
super("Registrar nuevo usuario");
Botones();///Llamo al metodo
 
///Configuro la ventana
setSize(420, 300);///Personalizo el tamaño 420*300(Ancho*altura)
setVisible(true);///Se hace visible
setLocationRelativeTo(null);///posiciona la ventana justo en el centro
///setDefaultCloseOperation(DISPOSE_ON_CLOSE);
}
//public static void main(String[] args) {
// TODO Auto-generated method stub
     /// registrarse r=new registrarse();
//}

///MetodoBOtones
public void Botones(){
this.setLayout(null);
jlnomb =new JLabel("Nombre de Usuario: ");
jlnomb.setBounds(30, 40, 120, 20);
jtnomb =new JTextField();
jtnomb.setBounds(150, 40, 120, 20);
jlpass =new JLabel("Ingrese Password: ");
jlpass.setBounds(30,70,120,20);
 
jppass=new JPasswordField();
jppass.setBounds(150, 70, 120, 20);
aceptar=new JButton("Aceptar");
aceptar.setBounds(60, 130, 90, 20);
aceptar.addActionListener(this);
cancelar=new JButton("Cancelar");
cancelar.setBounds(160, 130, 90, 20);
cancelar.addActionListener(this);
add(jlnomb);
add(jppass);
add(jtnomb);
add(jlpass);
add(aceptar);
add(cancelar);
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==aceptar){
if(jtnomb.getText().equals("") || jppass.getText().equals("")){
JOptionPane.showMessageDialog(null,"Los datos estan incompletos","ERROR",JOptionPane.ERROR_MESSAGE);
}else{
if(jtnomb.getText().equals("Alexis")&& jppass.getText().equals("1088264375C")){
JOptionPane.showMessageDialog(null,"BIENVENIDO "+jtnomb.getText());
}
}
}else{
if(e.getSource()==cancelar){
System.exit(0);
}
}
}
}


Nota:  Ya he instalado Wampserver, para que la proxima entrada sea algo relacionado con bases de datos aqui dejo el link de descarga: Wampserver

domingo, 6 de octubre de 2013

Calculadora GUI en java

El siguiente ejercicio lo encontré en uno de los blogs que frecuento, me parece una aplicación muy interesante para entender la interacción de los usuarios con la interfaz.


Aquí les dejo el blog donde pueden encontrar mas ejemplos: clic aqui


import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
  
public class Calculadora extends JFrame implements ActionListener{
 private JButton btn1,btn2,btn3,btn4,btn5;
 private JTextField val1,val2,resul;
  
 //metodo donde creo y añado los controles
 public void Controles(){
   //obtener panel de contenido y establecer su esquema
      Container contenedor = getContentPane();
      contenedor.setLayout( new FlowLayout(FlowLayout.CENTER) );
   //crear controles y añadir
      Label lbl1 = new Label("Numero");
      contenedor.add(lbl1);
      val1 = new JTextField(10);
      contenedor.add(val1);
      Label lbl2 = new Label("Numero");
      contenedor.add(lbl2);
      val2 = new JTextField(10);
      contenedor.add(val2);
      btn1 = new JButton("+");
      contenedor.add(btn1);
      btn1.addActionListener(this);
      btn2 = new JButton("-");
      contenedor.add(btn2);
      btn2.addActionListener(this);
      btn3 = new JButton("x");
      contenedor.add(btn3);
      btn3.addActionListener(this);
      btn4 = new JButton("/");
      contenedor.add(btn4);
      btn4.addActionListener(this);
      btn5 = new JButton("Limpiar");
      contenedor.add(btn5);
      btn5.addActionListener(this);
      resul = new JTextField(10);
      contenedor.add(resul);
 }
  
 public Calculadora(){
   //titulo ventana
      super("Calculadora");
      //cargo controles
      Controles();
      //tamaño ventana y mostrar y centrar
      setSize(380,150);
      setLocationRelativeTo(null);//centrar
      setVisible(true);
 }
  
 //eventos botones
   public void actionPerformed(ActionEvent e) {
     double  num1,num2,resu;
     String resultado;
        if (e.getSource()==btn1) {
         if(val1.getText().equals("") || val2.getText().equals("")){
          JOptionPane.showMessageDialog(null, "Los datos Están Incompletos",
          "Error",JOptionPane.ERROR_MESSAGE);
         }
         else{
          num1=Double.parseDouble(val1.getText());
          num2=Double.parseDouble(val2.getText());
          resu=num1+num2;
          resultado=String.valueOf(resu);
          resul.setText(resultado);
         }         
        }
        if (e.getSource()==btn2) {
         if(val1.getText().equals("") || val2.getText().equals("")){
          JOptionPane.showMessageDialog(null, "Los datos Están Incompletos",
          "Error",JOptionPane.ERROR_MESSAGE);
         }
         else{
          num1=Double.parseDouble(val1.getText());
          num2=Double.parseDouble(val2.getText());
          resu=num1-num2;
          resultado=String.valueOf(resu);
          resul.setText(resultado);
         }         
        }
        if (e.getSource()==btn3) {
         if(val1.getText().equals("") || val2.getText().equals("")){
          JOptionPane.showMessageDialog(null, "Los datos Están Incompletos",
          "Error",JOptionPane.ERROR_MESSAGE);
         }
         else{
          num1=Double.parseDouble(val1.getText());
          num2=Double.parseDouble(val2.getText());
          resu=num1*num2;
          resultado=String.valueOf(resu);
          resul.setText(resultado);
         }         
        }
        if (e.getSource()==btn4) {
         if(val1.getText().equals("") || val2.getText().equals("")){
          JOptionPane.showMessageDialog(null, "Los datos Están Incompletos",
          "Error",JOptionPane.ERROR_MESSAGE);
         }
         else{
          num1=Double.parseDouble(val1.getText());
          num2=Double.parseDouble(val2.getText());
          try{
           resu=num1/num2;
           resultado=String.valueOf(resu);
           resul.setText(resultado);
          }
          catch(ArithmeticException ex){
            JOptionPane.showMessageDialog(null, "No se Puede Dividir Entre 0",
            "Error",JOptionPane.ERROR_MESSAGE);
          }
           
         }         
        }
        if (e.getSource()==btn5){
         val1.setText("");
            val2.setText("");
            resul.setText("");
       }            
    }
     
    public static void main(String[] args) {
      JFrame.setDefaultLookAndFeelDecorated(true);
      Calculadora calc = new Calculadora();//Instanciamos la clase que creamos
      calc.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//cerrar ventana
    }
}