• Lunes 23 de Diciembre de 2024, 09:08

Autor Tema:  Radio Button  (Leído 8543 veces)

jhumpa

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Radio Button
« en: Jueves 16 de Noviembre de 2006, 21:51 »
0
Hola a todo el foro, hace poco me he estado iniciando en esto de la interfaz, y ahora me encuentro con un pequeño problema:
En el programa selecciono una opcion del radio button,pero quisiera al pulsar un boton ("limpiar")no logro quitar la seleccion q hice, es decir se sigue viendo el "punto negro" , en el radio button.
Porfavor quisiera sus comentarios;..y gracias de antemano.

lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Radio Button
« Respuesta #1 en: Viernes 17 de Noviembre de 2006, 00:40 »
0
usas esto ??
rb.setSelected(false);

BYTE.
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"

jhumpa

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Re: Radio Button
« Respuesta #2 en: Viernes 17 de Noviembre de 2006, 05:47 »
0
Hola; gracias por tu sugerencia, pero ya habia probado con ese metodo,..y no funciona.Acontinuacion pondre el codigo para explicar mejor mi problema.
OBS:Son 2 radio buttons q los agrupo; y  cuenta con un boton q es de limpiar;....solo es un codigo de prueba.
Citar
import java.awt.*;
import javax.swing.*;

public class Prueba extends JFrame{
   JRadioButton rdnMacho;
    JRadioButton rdnHembra;
    ButtonGroup buttonGroup1;
     JButton btnLimpiar;
     JPanel   jPanel1;
    public Prueba(){
       initComponents();
       }
       private void initComponents() {
       rdnMacho = new JRadioButton();
  rdnHembra = new JRadioButton();
        buttonGroup1 = new ButtonGroup();
        btnLimpiar = new JButton();
  jPanel1 = new JPanel();
  JFrame f=new JFrame();
    f.setSize(200,200);
  f.setLayout(null);
   
   jPanel1.setBounds(10, 10, 500,500);
   jPanel1.setLayout(null);
   
        buttonGroup1.add(rdnMacho);
        rdnMacho.setText("Macho");
  rdnMacho.setBounds(10,50,80,20);
         jPanel1.add(rdnMacho);
         
        buttonGroup1.add(rdnHembra);
        rdnHembra.setText("Hembra");
        rdnHembra.setBounds(10,80,80,20);
       jPanel1.add(rdnHembra);
 
   btnLimpiar.setMnemonic('L');
        btnLimpiar.setText("Limpiar\n");
        btnLimpiar.setBounds(100,60,80,30);
        jPanel1.add(btnLimpiar);
           f.add(jPanel1);
           f.setVisible(true);
        btnLimpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                Limpiar(evt);
            }
        });
           
        }
        private void Limpiar(java.awt.event.ActionEvent evt) {

        rdnMacho.setSelected(false);
        }

        public static void main(String args[]){
         java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Prueba();
            }
        });
       

   }
}

Gracias por la atencion.
SALU2

silverfox

  • Miembro MUY activo
  • ***
  • Mensajes: 280
    • Ver Perfil
Re: Radio Button
« Respuesta #3 en: Viernes 17 de Noviembre de 2006, 11:39 »
0
Hola...

Es una buena pregunta... lamentablemente, tiene solución con truco, porque, estrictamente, no se puede.

Aquí te dejo un link al foro de sun, con la misma discusión y sus conclusiones.

http://forum.java.sun.com/thread.jspa?thre...ssageID=4347093

Un saludo.




Silverfox

jhumpa

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Re: Radio Button
« Respuesta #4 en: Viernes 17 de Noviembre de 2006, 23:06 »
0
Hola Gracias por pasarme el link, q me dirije a un asunto q tiene q ver con el tema de mi problema, pero no lo es.Ahi se plantea como seleccionar un opcion y q la anterior se deseleccione.Pero mi problema es:

1.-Selecciono una opcion del grupo (2) de los radio buttons
2.-Presiono el boton "limpiar"
3.-Se veen las opciones deseleccionadas(desaparece el "punto negro" q estuvo en el radio button).........ojo: ninguna queda al final seleccionada!

Bueno,..espero q esta vez haya sido mas claro.

Esperando tmb sus comentarios, le mando salu2.

jhumpa

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Re: Radio Button
« Respuesta #5 en: Lunes 20 de Noviembre de 2006, 00:28 »
0
Insistiendo con en este tema, porq todavia no le encuentro solucion,..les comentare q en otro foro me recomendaron un codigo;....pero el supuesto "truquito", no ejecuta bien,...ya q no se deseleccionan al pulsar el boton.

Código: Text
  1.         for ( Enumeration e=buttonGroup1.getElements();  e.hasMoreElements(); ) {
  2.     JRadioButton b = (JRadioButton)e.nextElement();
  3.     ButtonModel modelo = b.getModel();
  4.     buttonGroup1.setSelected(modelo, false)  
  5. };
  6.  


Asi como esta lo agregue al metodo "Limpiar".

Sigo con este asunto porq pienso resolver como sea este problema :lightsabre: ,....si supieran el truquito,..porfavor me responden.

Salu2.

silverfox

  • Miembro MUY activo
  • ***
  • Mensajes: 280
    • Ver Perfil
Re: Radio Button
« Respuesta #6 en: Lunes 20 de Noviembre de 2006, 12:03 »
0
Hola.

Vuelvo a remitirte al link que te envié en un post anterior.

Básicamente el truco está en añadir otro botón oculto, que no se muestra y que representa la selección vacía.
Cuando limpias, seleccionas ese botón y parece que se ha limpiado.



Un saludo.




Silverfox

jhumpa

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Re: Radio Button
« Respuesta #7 en: Jueves 23 de Noviembre de 2006, 00:26 »
0
Hola, muchas graciassss por la respuesta que me diste :good: , ya q me dado cuenta q tenias razon, el sitio q me recomendaste sugeria el dichoso truquito. Lo que pasa es q hay malos traductores en el internet q lo entendi mal;..bueno tratare de estudiar algo de ingles pes  :D .

Ya resolvi mi problema, y otra vez gracias por la ayuda. :)

Cordiales salu2.