java如何在滚动窗格中多行排列组件
我需要在滚动窗格中添加大约600个图像,但所有图像都是并排排列的
public CollectionPanel(Controller controller)
this.setBackground(Color.white);
this.setLayout(new BorderLayout());
JPanel content = new JPanel();
content.setLayout(new FlowLayout());
JScrollPane scrollPane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
for(int i = 0; i < 100; ++i){
content.add(new Sticker(i+1));
}
scrollPane.setViewportView(content);
this.add(scrollPane, BorderLayout.CENTER);
}
当他们到达屏幕末端时,如何安排他们进行“换行”
# 1 楼答案
使用GridLayout而不是并排安装组件的
FlowLayout
你也可以试试^{}
请看一下Using Layout Managers&A Visual Guide to Layout Managers了解有关工作示例代码的更多信息
# 2 楼答案
对于我自己,我会尽量让事情尽可能简单,把图像,实际上是图像图标,放到一个可以很好地处理图像图标的JList中。给它一个水平环绕,将其可见行数设置为0,将其放入一个JScrollPane,就这样了
# 3 楼答案
看看罗布·卡米克的WrapLayout
您可以调整框架的大小,所有组件都将被重新格式化。下面是一个用法示例