I can't add JButtons to a JList in a specific order
java, swing, user-interface
Solution
The reason it's happening is because you're adding all the buttons to a JList, which isn't really how you're meant to use a JList (usually you modify the model backing the list in order to add/remove items from the list). The list is internally doing something that takes up the first slot.
If you change this line:
JList list = new JList();
to:
JPanel list = new JPanel();
your layout will work (you have to remove the `setDragEnabled` line as well, and change 99 to 100). Whether there's some capability of JList that you want I'm not sure, but that's why your layout isn't working properly.
Problem
I try to add JButtons in the JList to be like a board game. Here's my code: ``` public class Board { public Board() { JList list = new JList(); list.setLayout(new GridLayout(10, 10)); list.setDragEnabled(true); Container container = new Container(); JFrame frame = new JFrame(); JPanel panel1 = new JPanel(); JPanel panel2 = new JPanel(); frame.add(container); container.add(panel1); for (int j = 0; j < 99; j++) { list.add(createButton()); } panel2.add(list); container.add(panel2); panel2.setLayout(new GridLayout()); panel1.setBounds(50, 150, 150, 150); panel1.setBackground(Color.YELLOW); panel2.setBounds(650, 150, 500, 500); panel2.setBackground(Color.RED); frame.setSize(1366, 768); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } public JButton createButton() { JButton button = new JButton(); button.setBackground(Color.BLUE); return button; } } ``` If I put 100 repetitions I get this: If I put 99 repetitions i get this: So my question is how can I fill the above board?