Можно, через собственный TableCellRenderer
| Код | public class CustomBooleanRenderer extends JLabel implements TableCellRenderer {
private Border emptyBorder = new EmptyBorder(1, 1, 1, 1);
public CustomBooleanRenderer() { setOpaque(true); }
@Override public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { setText(value == null || !((Boolean) value) ? "Не выполнено" : "Выполнено"); if (isSelected) { setForeground(table.getSelectionForeground()); setBackground(table.getSelectionBackground()); } else { setForeground(table.getForeground()); setBackground(table.getBackground()); }
if (hasFocus) { setBorder(UIManager.getBorder("Table.focusCellHighlightBorder")); } else { setBorder(emptyBorder); }
return this; }
}
|
цепляем его к конкретной колонке
| Код | jTable1.getColumnModel().getColumn(/* ваша колонка */).setCellRenderer(new CustomBooleanRenderer());
|
|