6

我花了很长时间搜索这个,我只找到了GroupableHeader代码。我需要一个标题超过 2 列中的 2 列JTable。如何在不使用臭名昭著的情况下做到这一点GroupableHeader,同时保持 `JTableHeader 的默认外观和感觉?


这是我想到的图形表示:

_________________________
|     Table Header      |
|-----------------------|
|           |           |
|-----------|-----------|
|           |           |
|-----------|-----------|
4

1 回答 1

3

这取决于您想要达到的目标。

我通过创建自己的 JTableHeader 做了类似的事情,它本质上只是一个JPanel.

我在上面放置了“组”标题,在我想要“分组”的列上方。

然后我作弊并使用现有表格行标题并将其添加到标题下方的第二行。

这需要一些手,因为您需要知道要分组/跨越的列及其宽度。您还需要监视其宽度的变化并适当地更新标题。

我见过的大多数实现都使用它们自己的 UI 实现,我个人不喜欢这样,因为它取消了您正在使用的外观的工作。

你可以看看这个,它展示了你可以用JTables 以及多列跨越来做的一些有趣的事情,但同样,它使用它自己的 UI 来让它工作。

我们在工作中开始使用的实现以相同的方式工作,我遇到的问题是您可以在组标题中看到鼠标调整光标大小,对我来说,这并不是您真正希望用户使用的看

于 2012-11-02T20:28:32.387 回答