有没有办法在JScrollPane
内调整滚动条的粗细?默认是一种笨重。
答案 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
的宽度。 :)