Как создать фид типа Instagram, используя GridBagLayout
и JScrollPane
в Swing?
oki, поэтому я пытаюсь создать галерею, похожую на фид instagram (три изображения рядомстороны и ряды могут быть как можно больше).
Я попытался сделать это, используя компоновку gridbag для jpanel, а затем добавить эту jpanel в jscrollpane.
// просто основная часть кода
rightbottom=new JPanel();
rightbottom.setPreferredSize(new Dimension(200,200));
rightbottom.setLayout(new GridBagLayout());
GridBagConstraints c1=new GridBagConstraints();
c1.insets = new Insets(1, 1, 1, 1);
gallery = new JScrollPane(rightbottom);
gallery.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
//aetherfirst,aethersecond..etc - это мои метки изображений, настроенные на мои предпочтительные размеры
c1.gridx=0;
c1.gridy=0;
c1.weightx=1;
c1.weighty=1;
c1.fill = GridBagConstraints.BOTH;
rightbottom.add(aetherfirst,c1);
c1.gridx=1;
c1.gridy=0;
rightbottom.add(aethersecond,c1);
c1.gridx=2;
c1.gridy=0;
rightbottom.add(aetherthird,c1);
c1.gridx=0;
c1.gridy=1;
rightbottom.add(aetherfourth,c1);
c1.gridx=1;
c1.gridy=1;
rightbottom.add(aetherfifth,c1);
c1.gridx=2;
c1.gridy=1;
rightbottom.add(aethersixth,c1);
c1.gridx=0;
c1.gridy=2;
rightbottom.add(aetherseventh,c1);
это не получилось, как ожидалось, каждый раз, когда я добавляю больше изображений вместо использования пробела, чтобы прокрутить внизчтобы увидеть изображения, не видимые в видимом пространстве, он сжимает другие изображения, чтобы поместить их все в одно и то же видимое пространство.