I use JTable, and here how it's like when I use
As you can see it's show sort arrow. Nice. Now I want to change color of header when filter by this column. I use this code:
private void refreshColumnHeader() {
// model column "Added on" index always = 2
JLabel blueLabel = new JLabel(m2DocumentsTableModel.getColumnName(modelColumnIndex), JLabel.CENTER);
blueLabel.setFont(new Font("SansSerif", Font.PLAIN, 12));
blueLabel.setBorder(headerBorder);
TableCellRenderer tableCellRenderer = new JComponentTableCellRenderer();
TableColumnModel columnModel = m2DocumentsTableView.getColumnModel();
TableColumn columnAddedOn = columnModel.getColumn(vColIndex);
if (modelColumnIndex == 1) { // column "Added On"
if (!dateTimeFilter.hasFilter()) {
blueLabel.setForeground(foregroundTableHeaderNotFilter);
} else {
blueLabel.setForeground(foregroundTableHeaderFilter);
}
}
columnAddedOn.setHeaderRenderer(tableCellRenderer);
columnAddedOn.setHeaderValue(blueLabel);
}
But now the arrow is hide.