我在面板中有一个Box(verticalBox),里面有复选框,我可以滚动它。
我试过
Box box = Box.createVerticalBox();
JScrollPane scrollArea = new JScrollPane(box,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
panel = new JPanel();
panel.add(scrollArea);
add(aggiuntaPanel, BorderLayout.CENTER);
我可以在框架中看到Box,但我无法滚动它。我该怎么办?
答案 0 :(得分:2)
你需要反过来做。要使组件可滚动,您必须将其包含在内JScrollPane
。
panel.add(scrollArea);
应该是:
scrollPanel.add(panel);
此外(如@Gorbels的评论中所述),您需要在JScrollPane
上设置维度,然后再将其添加到包含的组件中:
scrollPanel.setPreferredSize(new Dimension(WIDTH, HEIGHT));
使用preferredSize将布局委托给布局管理器,您也可以使用setSize()
尽管有一些差异,如in this SO Q&A所述