Merging cells in JTable

半腔热情 提交于 2019-12-18 13:15:50

问题


Is it possible to merge some cells of a JTable object?


(source: codeguru.com)

If it's not possible through JTable what is the best approach. Thanks.


回答1:


Not out-of-the-box. Here is an example that supports merging arbitrarty cells. This page has several examples of tables with spanning cells. Of course it's old and you get what you pay for. If paid software is an option, JIDE Grids has some really nice Swing table support including custom cell spans.




回答2:


You could implement a JTable using a TableModel merging two columns of the original 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);
 }
(...)
}


来源:https://stackoverflow.com/questions/476721/merging-cells-in-jtable

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!