我发现了这个例子:

http://java2s.com/Open-Source/Java-Document-2/Swing/petersoft-java-style-2/com/petersoft/white/SplitPaneDivider.java.htm

我想将其应用于我的JSplitPane。

所以我做:

BasicSplitPaneUI bspUI=(BasicSplitPaneUI)mainContainer.getUI();
mainContainer.setUI(new ola.elementsCustom.SplitPaneDivider(bspUI));


但这给了我一个我不太了解的错误:

找不到适合setUI()的方法(ola.elementsCustom.SplitPaneDivider)
方法javax.swing.JSplitPane.setUI(javax.swing.plaf.SplitPaneUI)不适用...

我该如何解决?

最佳答案

ola.elementsCustom.SplitPaneDivider需要扩展javax.swing.plaf.SplitPaneUI-您确定是这种情况吗?

无论如何,您始终可以使用以下方法修改分隔线的外观和行为:

splitPane.setUI(new BasicSplitPaneUI() {
            public BasicSplitPaneDivider createDefaultDivider() {
                return new BasicSplitPaneDivider(this) {
                    public void setBorder(Border b) {
                        //some code
                    }
                };
            }
        });

09-20 22:23