How can I add custom JComponent in a single JTable cell?

元气小坏坏 提交于 2019-12-25 08:16:17

问题


I want to make a JTable , where one single cell (not all rows of a column) will contain a JComponent like JdatePicker or JComboBox. I have written this code

    DefaultTableModel dm;
    dm = new DefaultTableModel() {
        public boolean isCellEditable(int rowIndex, int columnIndex) {
            return !(columnIndex == 0); //make 0th column non-editable
        }
    };
    Object [] columnHeaders=new Object[]{"Field", "Value"};
    Object [][] data=new Object[][]{{"ID",""},{"Reg Year",""},{"Reg Date", ""}} ;

    regFormTable.setModel(dm); //regFormTable is a Jtable object

I also have a class that implements TableCellrenderer:

public class datePickerCellRenderer extends JFrame implements TableCellRenderer{
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
    this.add(new JDateChooser());
    return this;
}

}

How can I use datePickerCellRenderer class to implement as I described. I tried a few ways. None of those worked. [Using Netbeans GUI builder is there a way to do that?]

Plaese ask if any more code I need to add

来源:https://stackoverflow.com/questions/40202441/how-can-i-add-custom-jcomponent-in-a-single-jtable-cell

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!