在JTable中设置单元格边框

我有一个JTable ,我只显示水平线来分隔每个表行。 在Windows 8中,线条显示,但在Mac OS X中,它们没有。 我在自定义单元格渲染器中为表中的所有单元格使用JLabel ,并为JLabel添加了一个遮罩边框,以便为Mac OS X更正此问题。但是,它看起来不正确,因为如果仔细观察在下面的屏幕截图中,您可以看到水平线断开(即不连续),其中一列结束而另一列开始。 (仔细查看英文和注释列。)

在此处输入图像描述

如何为表中的所有单元格添加边框,使其看起来像下面的Windows 8屏幕截图中的那个?

在此处输入图像描述

Mac OS X上的Table.background委托将Table.backgroundTable.gridColorColor.white ,使网格有效不可见。 您可以像这样更改网格颜色:

 UIManager.put("Table.gridColor", new ColorUIResource(Color.gray)); EventQueue.invokeLater(new Runnable() { @Override public void run() { // construct your GUI } });