SoloCodigo

Programación General => Java => Mensaje iniciado por: .net en Miércoles 21 de Noviembre de 2012, 01:51

Título: Jtable columna jradiobutton
Publicado por: .net en Miércoles 21 de Noviembre de 2012, 01:51
Alguien tiene un ejemplo de hacer una jtable que tenga dos columnas que sean object y que la tercera columna sea jradiobutton

Ayuda!!!
Título: Re:Jtable columna jradiobutton
Publicado por: arielb en Jueves 22 de Noviembre de 2012, 18:42
Hola, acá hay un par con checkbox
http://blog.arielb.com/2011/07/obtener-registro-seleccionado-jtable.html (http://blog.arielb.com/2011/07/obtener-registro-seleccionado-jtable.html)
http://blog.arielb.com/2011/08/jtable-checkbox-seleccionado.html
Título: Re:Jtable columna jradiobutton
Publicado por: .net en Viernes 23 de Noviembre de 2012, 20:14
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