I'd like to replicate the example shown here:
Wrap Layout
Using MiGLayout. I have tried some combinations, but I'm having a hard time making the buttons wrap automatically to new rows as the container shrinks.
Could someone please provide a working example doing this?
Here is a shell for the program:
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import net.miginfocom.swing.MigLayout;
public class MiGTest extends JFrame{
private JPanel jPanel;
private JButton jButton;
public static void main(String[] args) {
new MiGTest().setVisible(true);
}
public MiGTest(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new MigLayout("debug"));
initComponents();
addComponents();
pack();
}
private void addComponents() {
add(jPanel);{
for (int i = 0; i < 10; i++) {
jPanel.add(new JButton("" + i));
}
}
}
private void initComponents() {
jPanel = new JPanel(new MigLayout("debug"));
jButton = new JButton("Test");
}
}
<WrapLayout> is a layout container that lets you position items in rows or columns, based on the orientation property. When the space is filled, the container automatically wraps items onto a new row or column.
MiGLayout is a grid-based layout underneath, as is FormLayout or GridBagLayout. However, it provides constraints that allow it to be used conceptually as a flowing or docking layout; it even provides absolute positioning of some components.
According to the creators of MiGLayout and the answers to the following questions:
http://migcalendar.com/forums/viewtopic.php?f=8&t=3421
http://migcalendar.com/forums/viewtopic.php?f=8&t=2270&hilit=wrap+container
http://migcalendar.com/forums/viewtopic.php?f=8&t=2015&hilit=wrap+container
http://migcalendar.com/forums/viewtopic.php?f=8&t=1137&hilit=wrap+container
, MiGLayout quite simply doesn't support this. Neither does it support wrapping within a single cell.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With