设置滚动条厚度
2022-09-03 12:56:31
有没有办法在?默认值有点笨拙。JScrollPane
一个快速但又肮脏的解决方案是将宽度/高度显式设置为例如10像素,通过
jScrollPane.getVerticalScrollBar().setPreferredSize(new Dimension(10, 0));
jScrollPane.getHorizontalScrollBar().setPreferredSize(new Dimension(0, 10));
另一种方法是提供适当的.ScrollBarUI
以下内容适用于默认的 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());
我希望这可以帮助某人。