Изменить цвет фона конечных кнопок ScrollBar

В Java я исследовал, как изменить цвет фона кнопок на концах полосы прокрутки. Я не нашел сайта, на котором объяснялось бы, как это сделать, и я также просмотрел настройки по умолчанию UIManager, чтобы попытаться что-то найти, но ничего не нашел. Поэтому, если кто-нибудь может сказать мне, как изменить цвет фона для кнопок на полосе прокрутки, я был бы очень признателен. Спасибо.


person Josh M    schedule 17.06.2012    source источник


Ответы (1)


Создайте новый BasicScrollBarUI и переопределите методы createDecreaseButton и createIncreaseButton:

final Color newColor = ...
ScrollBarUI yourUI = new BasicScrollBarUI() {
    @Override
    protected JButton createDecreaseButton(int orientation) {
        JButton button = super.createDecreaseButton(orientation);
        button.setBackground(newColor);
        return button;
    }

    @Override
    protected JButton createIncreaseButton(int orientation) {
        JButton button = super.createIncreaseButton(orientation);
        button.setBackground(newColor);
        return button;
    }
};
JScrollPane scroll = ...
scroll.getVerticalScrollBar().setUI(yourUI);
scroll.getHorizontalScrollBar().setUI(yourUI);
person Jeffrey    schedule 17.06.2012