Java Swing - Jtable Text Alignment And Column W... Instant
((DefaultTableCellRenderer) table.getTableHeader().getDefaultRenderer()) .setHorizontalAlignment(SwingConstants.CENTER);
DefaultTableCellRenderer centerAlignedRenderer = new DefaultTableCellRenderer(); centerAlignedRenderer.setHorizontalAlignment(JLabel.CENTER); table.getColumnModel().getColumn(1).setCellRenderer(centerAlignedRenderer);
import javax.swing.*; import javax.swing.table.DefaultTableModel; Java Swing - JTable Text Alignment And Column W...
He looked at the Description column. A long sentence stretched across multiple lines, wrapping neatly at the column boundary, pushing the row taller just enough to contain it. The next row, with a short description, was shorter. The row heights were dynamic. Perfect. Beautiful.
JTable provides several auto-resize constants: ((DefaultTableCellRenderer) table
// Make the frame visible frame.setVisible(true);
model = new ProductTableModel(); table = new JTable(model); table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); wrapping neatly at the column boundary
@Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) // Reuse default behavior for colors, selection, etc. Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);