JFrame: как сделать прозрачную полосу прокрутки

Последние пару часов я работал над кодом, пытаясь сделать полосу прокрутки прозрачной. Мне удалось сделать его прозрачным, когда я захватил объект полосы прокрутки из области прокрутки и изменил его значение.

любой другой способ сделать это?

Пример кода JFrame


person Apthos    schedule 17.05.2017    source источник
comment
Не помещайте код в изображение! Вставьте его как текст в редактировать вопрос. Дополнительные советы: 1) Пожалуйста, используйте форматирование кода для кода и фрагментов кода, структурированных документов, таких как HTML/XML или ввода/вывода. Для этого выделите текст и нажмите кнопку {} вверху формы публикации/редактирования сообщения. 2) Чтобы быстрее получить помощь, опубликуйте минимально воспроизводимый пример или Короткий, автономный, правильный пример.   -  person Andrew Thompson    schedule 17.05.2017
comment
Я не думаю, что они прозрачные, а просто того же цвета, что и редактор.   -  person MadProgrammer    schedule 17.05.2017


Ответы (1)


Продлить javax.swing.JViewPort. Вы можете нарисовать что-нибудь внутри него

class TransparentViewPort extends JViewport
{

    public TransparentViewPort() {
        setOpaque(false);
    }

}

Затем установите экземпляр TransparentViewPort в качестве порта просмотра JScrollPane:

scrollPane.setViewport(new TransparentViewPort())

И если вы хотите сделать JScrollBar прозрачным, посмотрите Java JScrollBar Design

person Jay Smith    schedule 17.05.2017
comment
Я попробовал это, и моя панель прокрутки просто исчезла, я делаю что-то не так? - person Apthos; 17.05.2017