我有一个只包含一个JTree实例的JScrollPane。如何在JScrollPane中设置JTree周围的边距?
我有这样一个代码
tree.setPreferredSize(new Dimension(200, 200));
JScrollPane scrollerTree = new JScrollPane(tree, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
scrollerTree.setPreferredSize(new Dimension(200, 199));
scrollerTree.getVerticalScrollBar().setUnitIncrement(16);我想实现,该边距将滚动与滚动窗格的内容。
发布于 2012-08-07 16:15:46
更新:从你更新的问题中,我估计你实际上是在追求JComponent.setBorder,示例屏幕截图:

代码:
public static void main(String[] args) {
JTree tree = new JTree();
tree.setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
JFrame frame = new JFrame("Test");
frame.add(new JScrollPane(tree));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}最初的答案是,如果您想要在视图端口周围设置边框,请使用JScrollPane.setViewportBorder

代码:
public static void main(String[] args) {
JScrollPane scroll = new JScrollPane(new JTree());
scroll.setViewportBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
JFrame frame = new JFrame("Test");
frame.add(scroll);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}https://stackoverflow.com/questions/11841714
复制相似问题