• Jueves 28 de Marzo de 2024, 13:20

Autor Tema:  Jtable columna jradiobutton  (Leído 2307 veces)

.net

  • Miembro MUY activo
  • ***
  • Mensajes: 181
  • Nacionalidad: mx
    • Ver Perfil
Jtable columna jradiobutton
« en: Miércoles 21 de Noviembre de 2012, 01:51 »
0
Alguien tiene un ejemplo de hacer una jtable que tenga dos columnas que sean object y que la tercera columna sea jradiobutton

Ayuda!!!
« última modificación: Miércoles 21 de Noviembre de 2012, 02:02 por .net »
La lógica lleva a más lógica

Apoyo a un mundo OPEN SOURCE!!!

Eso si es el paraíso

arielb

  • Moderador
  • ******
  • Mensajes: 771
  • Nacionalidad: pa
    • Ver Perfil
    • http://coder-pa.blogspot.com
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16

http://coder-pa.blogspot.com

.net

  • Miembro MUY activo
  • ***
  • Mensajes: 181
  • Nacionalidad: mx
    • Ver Perfil
Re:Jtable columna jradiobutton
« Respuesta #2 en: Viernes 23 de Noviembre de 2012, 20:14 »
0
Alguien tiene un ejemplo de hacer una jtable que tenga dos columnas que sean object y que la tercera columna sea jradiobutton

Ayuda!!!

Encontre la solucion

Se las comparto 
Código: [Seleccionar]
public class jRadioCellRender extends JRadioButton implements TableCellRenderer {

    public jRadioCellRender() {
            super();
            setOpaque(true);
            setHorizontalAlignment(SwingConstants.CENTER);
        }

    @Override
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
        if (value instanceof Boolean) {
                this.setSelected(((Boolean) value).booleanValue());
                setForeground(table.getForeground());
                setBackground(table.getBackground());

        }
        return this;
    }
   
}

Código: [Seleccionar]
public class jRadioCellEditor extends  AbstractCellEditor implements TableCellEditor{

    protected  JRadioButton radio;
    public jRadioCellEditor() {
        radio = new JRadioButton();
        radio.setHorizontalAlignment(SwingConstants.CENTER);
    }
   
   
    @Override
    public Object getCellEditorValue() {
        return Boolean.valueOf(radio.isSelected());
    }

    @Override
    public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
        if(value != null)
        {
          radio.setSelected(((Boolean)value).booleanValue());
         
        }
        return radio;
    }
   
}

Para llamar las clases y cree una columna  jradiobutton

 tblPrecios.getColumnModel().getColumn(2).setCellEditor(new jRadioCellEditor());
 tblPrecios.getColumnModel().getColumn(2).setCellRenderer(new jRadioCellRender());

listo me crea la columna jradiobutton

Grax arielb me sirvieron tus ligas
La lógica lleva a más lógica

Apoyo a un mundo OPEN SOURCE!!!

Eso si es el paraíso