簡體   English   中英

定制設計JScollPane Java Swing

[英]Custom design JScollPane Java Swing

我需要為我的所有scrollpanes設計這個滾動條:

在此輸入圖像描述

使用Java Swing。 我正在使用Netbeans IDE。 什么是最簡單的解決方案?

非常感謝你。

問候

您可以通過設置自定義UI來自定義 Swing組件的外觀 如果是滾動窗格的滾動條,則可以

scrollPane.getVerticalScrollBar().setUI(new MyScrollBarUI());

其中MyScrollBarUI派生自javax.swing.plaf.basic.BasicScrollBarUI 要對所有滾動條(不僅在JScrollPane實例中)執行此操作,請調用

UIManager.put("ScrollBarUI", "my.package.MyScrollBarUI");

在創建任何Swing組件之前。

MyScrollBarUI ,您重寫以下方法:

public class MyScrollBarUI extends BasicScrollBarUI {

    @Override
    protected void paintTrack(Graphics g, JComponent c, Rectangle trackBounds) {
        // your code
    }

    @Override
    protected void paintThumb(Graphics g, JComponent c, Rectangle thumbBounds) {
        // your code
    }
}

您的滾動條圖形非常簡單,因此實現起來應該不會太難。

1)覆蓋JToolBar

2)大多數自定義外觀都超過了它

不要忘記,如果您打算使用UIManager覆蓋所有這樣的滾動條

UIManager.put("ScrollBarUI", "my.custom.SimpleScrollBarUI");

那么你的SimpleScrollBarUI類必須有createUI方法,即:

public class SimpleScrollBarUI extends BasicScrollBarUI {

    public static ComponentUI createUI(JComponent c) {
        return new SimpleScrollBarUI();
    }

    //...

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM