我想在jscrollpane上添加一个Jpanel;我也想只有垂直滚动。我想设置我的jPanel“flowLaout”的布局,并通过jpanel.add(component)方法在我的代码中为我的jPanel添加几个组件。结果是所有组件都放在一行中,该行划分了jpanel的宽度并且未显示。我使用过这些技巧并且都失败了:
jScrollPane1.setHorizontalScrollBar(null);
jScrollPane1.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
答案 0 :(得分:3)
Wrap Layout应该适合你。
答案 1 :(得分:1)
我不确定您当前项目的详细信息,但我建议MigLayout。它从来没有错过我。
我目前正在编写一个带有嵌套MigLayout面板的触摸屏界面,最多可达4或5层,并且没有遇到任何问题。
答案 2 :(得分:-1)
请使用以下政策打开垂直滚动并关闭水平滚动(适用于Java SE 7):
Panel graphicPanel = new Panel();
JScrollPane scrollbar = new JScrollPane(graphicPanel);
scrollbar.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
scrollbar.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
scrollbar.setPreferredSize(new Dimension(1300, 600));
scrollbar.setVisible(true);
add(scrollbar, BorderLayout.CENTER);