JScrollPane изменить источник вертикальной полосы прокрутки
У меня есть JFrame, который позволяет пользователю просматривать и просматривать записи из базы данных, которая выглядит следующим образом:
где метки никогда не перемещаются и информация прокручивается под ними. Моя проблема в том, что мой пользователь хочет, чтобы полоса прокрутки была похожа на крайнюю правую (которая находится внутри собственной JPanel и добавлена в JFrame) вместо той, которая прикреплена к JScrollPane. Кто-нибудь знает, как заставить мою ScrollPane прокручивать с помощью отдельной полосы прокрутки?
1 ответ
Хорошо, я понял, как достичь того, чего я хотел. Вместо того, чтобы изобретать велосипед и заставить JScrollBar работать с JScrollPane. Вместо этого я извлек вертикальную полосу прокрутки из моей JScrollPane, испортил ее и воткнул в свою JPanel следующим образом:
//Where dataPanel is a JPanel I want to be able to scroll
JScrollPane roller = new JScrollPane (dataPanel,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
JPanel scrollerPanel = new JPanel();
JScrollBar scrollBar = roller.getVerticalScrollBar();
scrollBar.setPreferredSize(new Dimension (20, 100));
scrollPanel.add(scrollBar);