设置滚动条粗细

时间:2011-03-20 21:15:01

标签: java user-interface scrollbar

有没有办法在JScrollPane内调整滚动条的粗细?默认是一种笨重。

4 个答案:

答案 0 :(得分:19)

快速但又脏的解决方案是明确地将宽度/高度设置为例如10像素通过

jScrollPane.getVerticalScrollBar().setPreferredSize(new Dimension(10, 0));
jScrollPane.getHorizontalScrollBar().setPreferredSize(new Dimension(0, 10));

其他方式是提供适当的ScrollBarUI

答案 1 :(得分:2)

int verticalScrollBarWidthCoefficient = 3;

scrollPane.getVerticalScrollBar().setPreferredSize(new Dimension(
        (int) scrollPane.getVerticalScrollBar().getPreferredSize()
                .getWidth() * verticalScrollBarWidthCoefficient,
        (int) scrollPane.getVerticalScrollBar().getPreferredSize().getHeight()
));

答案 2 :(得分:2)

以下内容适用于默认的LNF(金属)。

如果您只想设置特定大小,那么您可以在创建JScrollPane之前放置此代码(用您喜欢的任何大小替换40)...

UIManager.put("ScrollBar.width", 40);

如果你想根据默认大小缩放滚动条,那么就像这样(在创建JScrollPane之前)......

UIManager.put("ScrollBar.width", (int) ((int) UIManager.get("ScrollBar.width") * 2.5));

如果要在创建JScrollPane之后更改,事情会更复杂,但也不会太糟糕......

int scrollbarSize = <some dynamic value>;
UIManager.put("ScrollBar.width", scrollbarSize);
scrollPane.setVerticalScrollBar(scrollPane.createVerticalScrollBar());
scrollPane.setHorizontalScrollBar(scrollPane.createHorizontalScrollBar());

我希望能帮助别人。

答案 3 :(得分:-4)

对我来说最简单的方法就是直接编辑jquery.jscrollpane.css文件。更改.jspVerticalBar的宽度。 :)