Столбцы JTable могут содержать данные только одного типа. Поэтому, если какой-то столбец должен содержать и ячейки типа, скажем, JLabel, и JButton, тебе нужно создать свой класс типа Component (например, JPanel) MyCell. В экземпляры MyCell будешь добавлять либо JLabel, либо JButton. Если все ячейки таблицы можно сделать типа MyCell, то Renderer вроде как и не нужен. В противном случае, свой Renderer наследуй от DefaultTableCellRenderer и используй метод
| Код | Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
|
Object value - это фактически экземпляр MyCell для конкретной ячейки (или экземпляр соответствующего типа для другой ячейки)
| Код | MyCell myCell = (MyCell)value;
|
Его можно изменить как угодно, а потом вернуть
|