Слияние ячеек в JTable
Вопрос
Можно ли объединить несколько ячеек объекта JTable?
(источник: codeguru.com ) р>
Если это невозможно с помощью JTable, каков наилучший подход? Спасибо.
Решение
Не из коробки. Вот пример , который поддерживает объединение произвольных ячеек. На этой странице есть несколько примеров таблиц с остовными ячейками. Конечно, он старый, и вы получаете то, за что платите. Если платное программное обеспечение является опцией, JIDE Grids имеет действительно хорошую поддержку таблиц Swing в том числе пользовательские ячейки .
Другие советы
Вы можете реализовать JTable, используя TableModel, объединяющий два столбца исходной TableModel.
class Model2 extends AbstractTableModel
{
private TableModel delegate;
public Model2(TableModel delegate)
{
this.delegate= delegate;
}
public int getRowCount() { return this.delegate.getRowCount();}
public int getColumnCount() { return this.delegate.getColumnCount()-1;}
public Object getValueAt(int row, int col)
{
if(col==0) return ""+delegate.getValueAt(row,col)+delegate.getValueAt(row,col+1);
return delegate.getValueAt(col+1);
}
(...)
}
Не связан с StackOverflow