1

我在我的 JXTreeTable 上使用 BorderHighlighter 在非叶行的每个表格单元格上方放置一个边框,以便为用户提供更清晰的视觉分隔符。

问题是,当我展开分层列时,分层列中的所有单元格,对于所有行,都包括来自荧光笔的边框。其他列显示得很好。

我的 BorderHighlighter 定义如下:

Highlighter topHighlighter = new BorderHighlighter(new HighlightPredicate() {
    @Override
    public boolean isHighlighted(Component component, ComponentAdapter adapter) {
        TreePath path = treeTable.getPathForRow(adapter.row);
        TreeTableModel model = treeTable.getTreeTableModel();
        Boolean isParent = !model.isLeaf(path.getLastPathComponent());
        return isParent;
    }
}, BorderFactory.createMatteBorder(2, 0, 0, 0, Color.RED));

我正在使用 SwingX 1.6.5。

当它折叠时,顶部 BorderHighlighter 正确显示:

展开后,非层次列显示 BorderHighlighter 右侧,但不显示层次列:

4

0 回答 0