Вот что я пробовал:Почему клей исчезает, когда я обертываю панель другим?
JPanel p1 = new JPanel();
BoxLayout b1 = new BoxLayout(p1, BoxLayout.X_AXIS);
p1.setLayout(b1);
p1.add(new JButton("1"));
p1.add(Box.createHorizontalGlue());
p1.add(new JButton("1"));
И он работает довольно хорошо. Кнопки находятся на левой и правой сторонах
Но если завернуть его в JPanel
управляемый FlowLayout
клей исчезает.
//Flow Layout
JPanel jp = new JPanel();
//Box Layout
JPanel p1 = new JPanel();
BoxLayout b1 = new BoxLayout(p1, BoxLayout.X_AXIS);
p1.setLayout(b1);
p1.add(new JButton("1"));
p1.add(Box.createHorizontalGlue());
p1.add(new JButton("1"));
//put it into a JPanel with FlowLayout
jp.add(p1);
panel.add(jp);
Почему? Я думал, что клей был похож на любые другие компоненты, поэтому он не должен исчезать. Вот как это выглядит:
Не может кто-нибудь объяснить это? Обратите внимание, что если я помещу его в JPanel
с BoxLayout
, это нормально.