java - JTable 表头和间隔行

标签 java swing jtable jtableheader

我是 Swing 的新手,今天一直在努力使用 JTable 组件。因为我正在尝试制作一个有点花哨的表格,所以我无法在任何地方找到我正在寻找的特定答案。

我希望在表格的最顶部有一个“组”标题。这意味着 3 或 4 行横跨整个表,并将各个列“分组”,本质上是对它们进行分区。

示例(请原谅眼睛疲劳):

////////////////////////////////ANIMALS//////////////////////////
/////////Mammals///////////////////////Rodents///////////////////
////People/////Dogs//////////Rats/////Rodents of Unusual Size////

其中斜杠 ("/") 表示空格。标题为“ANIMALS”的第一个标题指的是表中的所有列。第二个标题向下分区 ANIMALS,依此类推。在第三个也是最后一个标题之后,我们到达了实际的表格,其中每行将有 4 列,每种类型的动物一列。

显然这是一个例子,而且可能是一个不好的例子,但这就是我所说的“分区 header ”的意思。

我的问题: 我看不到 JTableHeader 和 TableColumnModel 如何支持此功能。如果他们这样做了,有人能把我推向正确的方向吗?如果他们不这样做,这肯定不是 Swing 应用程序第一次需要这样的东西。有人知道任何第 3 方组件吗?

另外,我希望能够在整个表格中散布“Spacer”或 Spanning Rows,代表一组行。这些 Spacer 将存在于表内(而不是像标题一样位于表的顶部),但将跨越每一列并具有单个标签,表示由后续行表示的组的名称。同样,我没有看到 Swing 支持这个,有什么想法吗?

谢谢,对于真正糟糕的示例/绘图,我深表歉意。

最佳答案

您也许可以改编这个古老的 Multiple Row Header示例。

关于java - JTable 表头和间隔行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7084322/

相关文章:

java - 为 java.net.URI getUserInfo 处理具有 '@' 的 URL

java - 为什么我不需要为这个 swing helloworld 输入返回类型?

java - 如何在jtable中显示部分文本

java - 添加新行后如何更新 JTable 的 View ?

java - JTable更改列字体

java - list 中存在的项目模型 (json) 中缺少标识符

java - 泛型中原始类型和 <?> 的区别

java - 由于索引处不透明部分中的非法字符,无法使用路径加载 keystore 类型 JKS

java - MigLayout中push、grow、fill有什么区别?

java - 为 Swing 应用程序创建可执行 jar