close

1. 客製JSplitPanel之程式範例

        // 設定 splitPane Divider 與 leftButton、rightButton 之背景顏色
        splitPane.setUI(new BasicSplitPaneUI() {
            @Override
            public BasicSplitPaneDivider createDefaultDivider() {
                return new BasicSplitPaneDivider(this) {
                    @Override
                    public void paint(Graphics g) {
                        g.setColor(new Color(226,213,186));
                        g.fillRect(0, 0, getSize().width, getSize().height);
                        super.paint(g);
                    }
                };
            }
        });
        BasicSplitPaneDivider divider = (((BasicSplitPaneUI) splitPane.getUI()).getDivider());
        for (Component c: divider.getComponents()) {
            if (c instanceof JButton) {
                JButton b = (JButton) c;
                b.setBackground(new Color(226,213,186));
            }
        }
        divider.setBorder(BorderFactory.createLineBorder(new Color(102,51,0), 2));

 

2. 執行結果

執行結果01.png

▲生成時之樣貌

 

執行結果02.png

執行結果03.png

▲按下置頂和置底之樣貌

 

執行結果04.png

執行結果05.png

▲拖曳Divider時與拖曳後之樣貌

 

[補充]

1. 如果UI樣式選擇NimbusWindow已可成功變更成使用者所重新設定之樣式與顏色了,執行結果如下所示:

執行結果_Nimbus.png

UI樣式選擇Nimbus之樣貌

 

執行結果_Window.png

UI樣式選擇Window之樣貌

 

2. 本篇之主程式的部分,請參考「如何客製化JSplitPanelDivider之風格()」文章

 

參考網址:

https://www.javaworld.com.tw/jute/post/view?bid=5&id=243984&sty=0&tpg=1&ppg=1&age=0

 

 

 

arrow
arrow

    Elsa 發表在 痞客邦 留言(0) 人氣()