Для столбцов с текстом я делал так :
Код | class RendererText extends JLabel implements TableCellRenderer { public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { if(value instanceof String){ setText((String)value); setVerticalAlignment(JLabel.TOP); setHorizontalAlignment(JLabel.LEFT); if(isSelected) setFont(new Font("",Font.BOLD,14)); else setFont(new Font("",Font.PLAIN,14)); } return this; } }
|
при данном способе - нету выделения визуального... но можно изменить шрифт текста... как раз когда я выделяю ячейку Текст в соответствующем Jlable становиться BOLD и выходит за границы - отсюда обрезание поледних символов (а иногда и доброго куска строки) и добавление "...". И я не могу понять как мне споймать тот момент, когда ширины ячейки не хватает для полного отображения текста. (Решение данной проблемы есть ... видел на форуме... но ни как не могу найти её снова). и сделать так.. что бы невмещающийся текст перешёл на следующую строку... или в несколько строк(если требуеться) |