Java 在JTable中设置单元格边框

Java 在JTable中设置单元格边框,java,macos,swing,jtable,Java,Macos,Swing,Jtable,我有一个JTable,我只显示水平线来分隔每个表行。在Windows8中,行显示,但在MacOSX中,行不显示。我正在为表中的所有单元格使用自定义单元格渲染器中的JLabel,并且我在JLabel中添加了一个无光边框来纠正Mac OS X的此问题。但是,它看起来并不正确,因为如果仔细查看下面的屏幕截图,可以看到水平线已断开(即不连续)其中一列结束,另一列开始。(请仔细查看英文和Notes列。) 如何为表格中的所有单元格添加边框,使其看起来像下面Windows 8屏幕截图中的边框 Mac OS

我有一个
JTable
,我只显示水平线来分隔每个表行。在Windows8中,行显示,但在MacOSX中,行不显示。我正在为表中的所有单元格使用自定义单元格渲染器中的
JLabel
,并且我在
JLabel
中添加了一个无光边框来纠正Mac OS X的此问题。但是,它看起来并不正确,因为如果仔细查看下面的屏幕截图,可以看到水平线已断开(即不连续)其中一列结束,另一列开始。(请仔细查看英文和Notes列。)

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


Mac OS X上的
TableUI
委托将
Table.background
Table.gridColor
设置为
Color.white
,使网格实际上不可见。可以按如下方式更改栅格颜色:

UIManager.put("Table.gridColor", new ColorUIResource(Color.gray));
EventQueue.invokeLater(new Runnable() {

    @Override
    public void run() {
        // construct your GUI
    }
});

Mac OS X上的
TableUI
委托将
Table.background
Table.gridColor
设置为
Color.white
,使网格实际上不可见。可以按如下方式更改栅格颜色:

UIManager.put("Table.gridColor", new ColorUIResource(Color.gray));
EventQueue.invokeLater(new Runnable() {

    @Override
    public void run() {
        // construct your GUI
    }
});