• Viernes 29 de Marzo de 2024, 15:05

Autor Tema:  Escuchadores de CheckBox  (Leído 3094 veces)

Weezyfbaby

  • Nuevo Miembro
  • *
  • Mensajes: 4
  • Nacionalidad: us
    • Ver Perfil
Escuchadores de CheckBox
« en: Martes 12 de Noviembre de 2013, 03:13 »
0
Buen día colegas de solo código,quería ver si alguien me puede ayudar con mi código,estoy usando el IDE JCreator y bueno ya casi me salió todo mi programa,este consiste en que tenga un login y acceda,luego de eso introduzcas tus datos y lo muestre en un mensaje,hasta ahí todo bien pues ya lo hice :jumpie: .

Mi duda  :think: es que dentro de esta información tiene que tener si es M(Masculino) o F (Femenino) y esto lo tengo que hacer implementando 2 Checkbox,se supone que me debe dejar seleccionar uno a la vez, mi problema es que el escuchador me lanza errores,cuando lo agrego por ejemplo: chkopcionM.addActionListener(this); me tira errores y he buscado en varios lugares pero utilizan otros escuchadores...mas no tengo idea de como implementarlo para lo que yo quiero.

Me pudieran dar una pista o una ayuda.

Mi código es el siguiente.

Código: [Seleccionar]
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class login extends JFrame implements ActionListener {
   int i;
   //Labels
   JLabel lblusuario=new JLabel("USUARIO: ");
   JLabel lblcontraseña=new JLabel("CONTRASEÑA: ");
   
   //JTextField
   JTextField jtxtusuario=new JTextField();
   JPasswordField jtxtcontraseña=new JPasswordField(20);
   
   //JButton
   JButton cmdaceptar=new JButton("ACEPTAR");
   JButton cmdcancelar=new JButton("CANCELAR");
   

   public login(){
     
   super("Hospital Angel Leaño Login");
   this.setBounds(0,0,400,200);
   
   lblusuario.setBounds(20,20,180,19);
   lblcontraseña.setBounds(20,40,180,19);
   jtxtusuario.setBounds(120,20,180,19);
   jtxtcontraseña.setBounds(120,40,180,19);
   cmdaceptar.setBounds(20,80,100,19);
   cmdcancelar.setBounds(150,80,100,19);
   setLayout(null);
   this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   this.add(lblusuario);
   this.add(lblcontraseña);
   this.add(jtxtusuario);
   this.add(jtxtcontraseña);
   this.add(cmdaceptar);
   this.add(cmdcancelar);
   this.setVisible(true);
   //Escuchador
   cmdaceptar.addActionListener(this);
   cmdcancelar.addActionListener(this);
}

public void ingresar(){
   String usuario="Admin",pass="Admin",u,c;
   
   
   u=jtxtusuario.getText();
   c=jtxtcontraseña.getText();

     
   if(u.equals(usuario) && c.equals(pass)){

      JOptionPane.showMessageDialog(null,"Acceso Correcto");
      VentanaPrincipal a = new VentanaPrincipal();
       this.setVisible(false);
      }
      else{
         JOptionPane.showMessageDialog(null,"Usuario y/o Contraseña Incorrectos");
         i++;
      if(i==3){
         
         JOptionPane.showMessageDialog(null,"Haz llegado al limite de intentos");
         System.exit(0);
         }
         }
     
}



public void actionPerformed(ActionEvent evt)
         {
         Object presionado=evt.getSource();
         if(presionado==cmdaceptar)
            ingresar();
         if(presionado==cmdcancelar)
            System.exit(0);
         }
          public static void main(String[] args) {
       
     login vp=new login();
    }
}


Código: [Seleccionar]
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

 
class VentanaPrincipal extends JFrame implements ActionListener {
      //Icono
   ImageIcon icono = new ImageIcon("1.jpg");
   JLabel imagen = new JLabel();

   //Labels
   JLabel lblpaciente=new JLabel("PACIENTE");
   JLabel lblnombre= new JLabel("NOMBRE: ");
   JLabel lbledad= new JLabel("EDAD: ");
   JLabel lblsexo= new JLabel("SEXO: ");
   JLabel lblpeso= new JLabel("PESO: ");
   JLabel lblestatura= new JLabel("ESTATURA: ");
   JLabel lblcorreo= new JLabel("CORREO: ");
   JLabel lbltelefono= new JLabel("TELEFONO: ");
   
   
   //TextFields
   JTextField jtxtnombre=new JTextField();
   JTextField jtxtedad=new JTextField();
   JTextField jtxtsexo=new JTextField();
   JTextField jtxtpeso=new JTextField();
   JTextField jtxtestatura=new JTextField();
   JTextField jtxtcorreo=new JTextField();
   JTextField jtxttelefono=new JTextField();
   
   //JButtons
   JButton cmdterminar=new JButton("TERMINAR");
   JButton cmdlimpiar=new JButton("LIMPIAR");
   JButton cmdsalir=new JButton("SALIR");
   
   //CheckBox
   
   Checkbox chkopcionM = new Checkbox("M",false);
   Checkbox chkopcionF = new Checkbox("F",false);
   
   public VentanaPrincipal(){
     
      super("Hospital Angel Leaño");
      this.setBounds(0,0,800,600);
      //Labels Posicion y Tamaño
      lblpaciente.setBounds(400,10,180,19);
      lblnombre.setBounds(20,140,180,19);
      lbledad.setBounds(20,160,180,19);
      lblsexo.setBounds(360,160,180,19);
       //lblM.setBounds(420,160,180,19);
      //lblF.setBounds(480,160,180,19);
      lblpeso.setBounds(20,180,180,19);
      lblestatura.setBounds(360,180,180,19);
      lblcorreo.setBounds(20,200,180,19);
      lbltelefono.setBounds(20,220,180,19);
     
      //Cajas de Texto Posicion y Tamaño JTextField
      //   boton.setBounds(x, y, Largo, Alto);
      jtxtnombre.setBounds(115,140,210,19);
      jtxtedad.setBounds(115,160,210,19);
      jtxtpeso.setBounds(115,180,210,19);
      jtxtestatura.setBounds(430,180,210,19);
      jtxtcorreo.setBounds(115,200,210,19);     
      jtxttelefono.setBounds(115,220,210,19);
     
      //Botones JButton Posicion y Tamaño
      cmdterminar.setBounds(20,280,100,19);
      cmdlimpiar.setBounds(130,280,100,19);
      cmdsalir.setBounds(240,280,100,19);   
         
      //Imagen Posicion y Tamaño
      imagen.setBounds(100,0,231,135);
     
      //CheckBox Posicion y Tamaño
      chkopcionM.setBounds(430,155,30,20);
      chkopcionF.setBounds(490,155,30,20);
      //Agregar el formulario   
      setLayout(null);
      ImageIcon icono2 = new ImageIcon(icono.getImage().getScaledInstance(50, 50,Image.SCALE_DEFAULT));
      imagen.setIcon(icono);
      //Esta linea de codigo hace que cuando se cierre el programa cierre el proceso en memoria
      this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
      //Agregar los Objetos
      this.add(lblpaciente);
      this.add(lblnombre);
      this.add(lbledad);
      this.add(lblsexo);
      this.add(lblpeso);
      this.add(lblestatura);
      this.add(lblcorreo);
      this.add(lbltelefono);
      this.add(jtxtnombre);
      this.add(jtxtedad);
      this.add(jtxtpeso);
      this.add(jtxtestatura);
      this.add(jtxtcorreo);
      this.add(jtxttelefono);
      this.add(cmdterminar);
      this.add(cmdlimpiar);
      this.add(cmdsalir);
      this.add(imagen);
      this.add(chkopcionM);
      this.add(chkopcionF);
     
      //Hacerlo Visible
      this.setVisible(true);
     
      //Escuchador, Agregar al escuchador
      cmdterminar.addActionListener(this);
      cmdlimpiar.addActionListener(this);
      cmdsalir.addActionListener(this);
      //chkopcionM.addActionListener(this);
      //chkopcionF.addChangeListener(this);
      }
public void limpiar(){
       jtxtnombre.setText("");//La propiedad set text es para escribir en las cajas
       jtxtedad.setText("");//Limpiar escribe cadenas vacias.
       jtxtpeso.setText("");
       jtxtestatura.setText("");
       jtxtcorreo.setText("");
       jtxttelefono.setText("");
       
         }

public void terminar()
{
String N,E,P,C,T,ET,TODO;
N=jtxtnombre.getText();
E=jtxtedad.getText();
P=jtxtpeso.getText();
C=jtxtestatura.getText();
T=jtxtcorreo.getText();
ET=jtxttelefono.getText();


TODO="Nombre: "+N+"\nEdad: "+E+"\nPeso: "+P+"\nEstatura: "+C+"\nCorreo: "+T+"\nTelefono "+ET;

JOptionPane.showMessageDialog(null," "+TODO);
}


public void actionPerformed(ActionEvent e)
         {
         Object presionado=e.getSource();
         if(presionado==cmdterminar)
            terminar();
         if(presionado==cmdlimpiar)
            limpiar();
         if(presionado==cmdsalir)
            System.exit(0);     
         }
         
         
}
« última modificación: Martes 12 de Noviembre de 2013, 03:24 por Weezyfbaby »
"The Worls Is Yours"

.net

  • Miembro MUY activo
  • ***
  • Mensajes: 181
  • Nacionalidad: mx
    • Ver Perfil
Re:Escuchadores de CheckBox
« Respuesta #1 en: Martes 12 de Noviembre de 2013, 17:23 »
0
Mejor utiliza Radio Button y agregale un ButtonGroup

es mejor no
La lógica lleva a más lógica

Apoyo a un mundo OPEN SOURCE!!!

Eso si es el paraíso

Weezyfbaby

  • Nuevo Miembro
  • *
  • Mensajes: 4
  • Nacionalidad: us
    • Ver Perfil
Re:Escuchadores de CheckBox
« Respuesta #2 en: Martes 12 de Noviembre de 2013, 18:10 »
0
Pues si estaría mejor en group como comentas,de hecho ya lo cale de esa forma y si lo pude hacer pero me lo están pidiendo por Checkbox :(, el problema es que cuando agrego le escuchador me da error y no se con cual escuchador hacerlo.

"The Worls Is Yours"