Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 设置滚动条的厚度_Java_User Interface_Scrollbar - Fatal编程技术网

Java 设置滚动条的厚度

Java 设置滚动条的厚度,java,user-interface,scrollbar,Java,User Interface,Scrollbar,有没有办法调整JScrollPane中滚动条的厚度?默认设置有点笨重。一个快速但又脏的解决方案是通过via将宽度/高度明确设置为10像素 jScrollPane.getVerticalScrollBar().setPreferredSize(new Dimension(10, 0)); jScrollPane.getHorizontalScrollBar().setPreferredSize(new Dimension(0, 10)); 另一种方法是提供适当的滚动条ui以下内容适用于默认LNF

有没有办法调整
JScrollPane
中滚动条的厚度?默认设置有点笨重。

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

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

另一种方法是提供适当的
滚动条ui

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

int verticalScrollBarWidthCoefficient = 3;

scrollPane.getVerticalScrollBar().setPreferredSize(new Dimension(
        (int) scrollPane.getVerticalScrollBar().getPreferredSize()
                .getWidth() * verticalScrollBarWidthCoefficient,
        (int) scrollPane.getVerticalScrollBar().getPreferredSize().getHeight()
));
如果您只想设置一个特定的大小,那么您可以在创建JScrollPane之前放置此代码(用您喜欢的大小替换40)

如果要根据默认大小缩放滚动条,请执行以下操作(在创建JScrollPane之前)

如果您想在创建JScrollPane后更改它,事情会稍微复杂一些,但也不太糟糕

int scrollbarSize = <some dynamic value>;
UIManager.put("ScrollBar.width", scrollbarSize);
scrollPane.setVerticalScrollBar(scrollPane.createVerticalScrollBar());
scrollPane.setHorizontalScrollBar(scrollPane.createHorizontalScrollBar());
intscrollbarsize=;
UIManager.put(“滚动条.宽度”,滚动条大小);
scrollPane.setVerticalScrollBar(scrollPane.createVerticalScrollBar());
scrollPane.setHorizontalScrollBar(scrollPane.createHorizontalScrollBar());

我希望这对某人有所帮助。

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

谢谢!如何设置滚动条向上/向下按钮的大小?这会对方向按钮产生奇怪的影响。请参阅下面我的答案以获得替代解决方案。我在下面添加了一个更完整的解决方案,它适用于默认的外观(金属)。我知道这是一个老问题,但我在试图解决这个问题时遇到了它,所以我想我会回来和大家分享。这只有在你没有灵光LaF的情况下才有效。如果有,则第一种方式无效,第二种方式错误,因为
UIManager.get(“ScrollBar.width”)==null
UIManager.put("ScrollBar.width", (int) ((int) UIManager.get("ScrollBar.width") * 2.5));
int scrollbarSize = <some dynamic value>;
UIManager.put("ScrollBar.width", scrollbarSize);
scrollPane.setVerticalScrollBar(scrollPane.createVerticalScrollBar());
scrollPane.setHorizontalScrollBar(scrollPane.createHorizontalScrollBar());