合并 JTable 中的单元格
Posted
技术标签:
【中文标题】合并 JTable 中的单元格【英文标题】:Merging cells in JTable 【发布时间】:2010-10-03 08:48:05 【问题描述】:是否可以合并 JTable 对象的某些单元格?
(来源:codeguru.com)
如果无法通过 JTable 实现,那么最好的方法是什么。谢谢。
【问题讨论】:
【参考方案1】:您可以使用合并原始 TableModel 的两列的 TableModel 来实现 JTable。
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);
(...)
【讨论】:
我说的是合并“单元格”,而不是列。【参考方案2】:不是开箱即用的。 Here is an example 支持合并任意单元格。 This page 有几个带有跨单元格的表格示例。当然它是旧的,你得到你付出的代价。如果付费软件是一个选项,JIDE Grids 有一些非常好的 Swing table 支持,包括custom cell spans。
【讨论】:
这些 URL 中有 4 个是 404。:( -1 两年后没有修复:(以上是关于合并 JTable 中的单元格的主要内容,如果未能解决你的问题,请参考以下文章
如何在 DefaultTableModel/JTable 中合并单元格?