简体   繁体   中英

How do I add an empty row to JTable?

is there any way to an add empty row to jtable, where the first column is boolean, so it won't display the auto-generated checkbox?

I need it to separate groups of rows. I tried using the code below, but it is NOT working:

model.addRow(new Object[]{null,null,null,null});

I want make some rows completely empty so they work as separators. But in rest I would like to keep checkboxes

Instead of storing Boolean.TRUE or Boolean.FALSE in the model you would need to store null.

Then you have two options:

  1. Create a custom renderer that displays the Boolean values normally and recognizes the null value and doesn't display anything.

  2. Override the JTable.getCellRenderer() method. to return the renderer for the Object.class when the value is null. The default renderer for the Oject class will display null as an empty string.

尝试

model.addRow(new Object[]{Boolean.FALSE,null,null,null});

For the TableColumn instance for your first column, make a cell renderer (by implementing javax.swing.table.TableCellRenderer) that renders a checkbox (javax.swing.JCheckBox) for Boolean values different from null, and renders an empty label (javax.swing.JLabel) for null values. You can't do it with providing a DefaultTableCellRenderer (javax.swing.table.DefaultTableCellRenderer) AFAICT.

Then set the table cell renderer property of the TableColumn instance using TableColumn.setCellRenderer

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM