Java - Botones de radio

 
Vista:

Botones de radio

Publicado por José (1 intervención) el 16/12/2007 23:20:12
Buenas tardes tengan todos los lectores, mi nombre es José Eduardo y estudio en el CUCEI, estoy tratando de hacer un programa con el JCreator, que permita hacer lo siguiente:

-Alta de Alumnos
-Baja de Alumnos
-Consulta de Alumnos
-Cambios en Alumnos

La cosa esta en que la tengo que hacer con interfaz gráfica, y hasta el primer Dialogo que hice que muestra le menu principal con las opciones que anteriormente dije arriba, pero tengo un problema con los botones de radio.

Resulta que en cuanto doy clic en el boton "Alta de Alumnos", me muestra el siguiente dialogo que muestra el menu de alta de alumnos (de cuota o becados), sin dejarme hacer clic antes en un botno aceptar que le implemente, y no quiero que haga eso, quiero que espere a que despues de seleccionar la opcion yo de clic en aceptar para que lo haga.

Aqui dejare el codigo fuente del mismo:

Nota: el archivo dice Practica con frames pero estoy usando dialogos.

http://www.4shared.com/file/32223113/ec87c3f6/Practicando_con_frames.html
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Botones de radio

Publicado por Marco (57 intervenciones) el 20/12/2007 23:00:50
El problema radica que la instruccion con la que habres el siguiente Dialogo esta en el evento itemStateChanged el cual se activa cuando uno de los RadioButtons a cambiado de estado, por eso te aparece el siguiente dialogo cuando seleccionas esa opcion.
Lo correcto seria que la instruccion con la que habres el Dialogo este en el evento manejado por el boton Aceptar y desde alli verificas que opcion esta seleccionada, mas o menos asi:

Si quieres un conselo la forma en la que manejas los eventos no es la mas adecuada, puesto que con frames existen maneras mas ordenadas de manejarlos.

/**
* @(#)Practicando con frames.java
*
*
* @author
* @version 1.00 2007/12/14
*/
import java.awt.*;
import java.awt.event.*;
import java.awt.Dialog.*;

class Framepractice implements ActionListener,ItemListener,WindowListener{

/*Frame fmenup;*/
Dialog dmenup,altalumno,exit;
CheckboxGroup cbg;
Checkbox alta,baja,cambio,consulta,alcuota,albeca;
Button aceptar,aceptar2,salir,volver,si,no;


//Creacion de botones de radio
public Framepractice() {

dmenup=new Dialog(dmenup,"Menu Principal");
altalumno=new Dialog(altalumno,"Menu de Altas");
aceptar=new Button(" Aceptar ");
aceptar2=new Button(" Aceptar ");
volver=new Button(" Volver ");
si=new Button(" Si ");
no=new Button(" No ");
salir=new Button(" Salir ");
cbg=new CheckboxGroup();
alta=new Checkbox("Alta de Alumnos",cbg,false);
baja=new Checkbox("Baja de Alumnos",cbg,false);
cambio=new Checkbox("Seccion de cambios",cbg,false);
consulta=new Checkbox("Consultas",cbg,false);
alcuota=new Checkbox("Alta Alumnos de Cuota",cbg,false);
albeca=new Checkbox("Alta Alumnos de Beca",cbg,false);
exit=new Dialog(exit,"Confirmación");
exit.setLayout(new FlowLayout());
}

//adimnistracion del frame
public void admFrame(){

dmenup.setLayout(new FlowLayout(FlowLayout.LEFT,60,15));
altalumno.setLayout(new FlowLayout(FlowLayout.LEFT,60,15));
dmenup.addWindowListener(this);
altalumno.addWindowListener(this);
alta.addItemListener(this);
baja.addItemListener(this);
cambio.addItemListener(this);
consulta.addItemListener(this);
aceptar.addActionListener(this);
aceptar2.addActionListener(this);
salir.addActionListener(this);
volver.addActionListener(this);
si.addActionListener(this);
no.addActionListener(this);
dmenup.add(new Label("¿Que es lo que desea hacer?"));
dmenup.add(alta);
dmenup.add(baja);
dmenup.add(cambio);
dmenup.add(consulta);
dmenup.add(new Label(" "));
altalumno.add(new Label("Seccion de altas"));
altalumno.add(alcuota);
altalumno.add(albeca);
altalumno.add(aceptar2);
altalumno.add(volver);
exit.add(new Label(" ¿Está seguro que desea salir del programa?"));
exit.add(si);
exit.add(no);
exit.setSize(280,100);
dmenup.setSize(290,275);
altalumno.setSize(290,275);
dmenup.add(aceptar);
dmenup.add(salir);
dmenup.setVisible(true) ;
dmenup.setResizable(false);

}

public void windowClosing(WindowEvent we){


System.exit(0);
}



public void windowDeactivated(WindowEvent wd){
}

public void windowActivated(WindowEvent wa){
}

public void windowDeiconified(WindowEvent wdi){
}

public void windowIconified(WindowEvent wi){
}

public void windowOpened(WindowEvent wo){
}

public void windowClosed(WindowEvent wcl){
}


public void actionPerformed(ActionEvent ae){
if(ae.getActionCommand().equals(" Aceptar ")){
Button b=(Button)ae.getSource();
if(b==aceptar)
{
if(alta.getState())
{
dmenup.hide();
altalumno.show();
}
}
}

if(ae.getActionCommand().equals(" Volver ")){
altalumno.hide();
dmenup.show();
}

if(ae.getActionCommand().equals(" Salir ")){


exit.show();
}
if (ae.getActionCommand().equals(" Si "))

System.exit(0);
else if(ae.getActionCommand().equals(" No ")){
exit.hide();
dmenup.show();
}
}



public void itemStateChanged(ItemEvent ev){

if(ev.getStateChange()==ItemEvent.SELECTED){

//if(ev.getItem().equals("Alta de Alumnos") && ev.getSource(ev.actionPerformed())){


}
}


public static void main (String args[]){

Framepractice gui=new Framepractice();
gui.admFrame();

}


}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda!!por favor

Publicado por Heriberto (1 intervención) el 27/02/2009 03:47:56
hola espero alguien me pueda ayudar ya que tengo que realizar un programa con checkbox, lo cual cuando seleccionemos un checkbox segun sea el caso devera cambiarnos, el tipo de letra, color, fuente y tama;o,.........de este programa es el que devo partir espero ayuda antes del Domingo 1 de marzo.....gracias ....el editor que estoy utilizando es el jGRAPS

import java.applet.Applet;
import java.awt.*;

public class checkboxes extends Applet{
private TextField text1;
private Checkbox escribir, limpiar;

public void init(){
text1=new TextField(30);
escribir=new Checkbox ("Escribir");
limpiar=new Checkbox("Limpiar");
add(escribir);
add(limpiar);
add(text1);
}

public boolean action(Event e, Object o){
if (e.target instanceof Checkbox){
if (escribir.getState()==true)
text1.setText("Ejemplo de Checkbox");
if (limpiar.getState()==true)
text1.setText(" ");
}
return true;
}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Botones de radio

Publicado por Alan (1 intervención) el 08/06/2010 05:45:40
Tendrás el Codigo Terminado? Urge por favor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar