У меня проблемы с GridBagLayout. Я создал JPanel (в данном случае он называется mainPanel), макет которого установлен на GridBagLayout. Я указал ограничения для каждой кнопки JButton и добавил ограничения для каждой кнопки. Теперь, когда я запускаю свой код, кнопки всегда находятся рядом друг с другом, независимо от значения gridx / gridy, которое я указываю в ограничениях. Кроме того, кнопки всегда находятся в центре JFrame, когда я хочу, чтобы одна кнопка отображалась вверху справа, вверху слева и на юге.
import javax.swing.*;
import java.awt.*;
public class test {
public static void main (String[] args) {
myJFrame test = new myJFrame();
}
}
class myJFrame extends JFrame {
public myJFrame () {
setSize(500,500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainPanel myPanel = new mainPanel();
add(myPanel);
setVisible(true);
}
}
class mainPanel extends JPanel {
public mainPanel(){
setLayout(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.anchor = GridBagConstraints.NORTHWEST;
c.gridx = 1000;
c.gridy= 1;
add(new JButton("1"),c);
c.anchor = GridBagConstraints.NORTHEAST;
c.gridx = 100;
c.gridy= 1;
add(new JButton("2"),c);
c.anchor = GridBagConstraints.SOUTH;
c.gridx = 200;
c.gridy= 1;
add(new JButton("3"),c);
}
}
Это то, что я получаю, когда запускаю код