Я хочу, чтобы это:Как правильно настроить этот графический интерфейс?
Я попытался это:
// Vertically center
formatbp.setLayout (new GridBagLayout()); // formatbp is a JPanel
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = GridBagConstraints.RELATIVE;
rbpanel.setLayout(new BoxLayout(rbpanel, BoxLayout.PAGE_AXIS)); // rbpanel is also a JPanel
rb = new ButtonGroup();
rbpanel.add(new JLabel("Words are seperated by: "));
rbLinesOrTabs.setSelected(true);
rb.add(rbLinesOrTabs);
rbpanel.add(rbLinesOrTabs);
rbLinesOrTabs.addActionListener(this);
rbotherpanel = new JPanel(new FlowLayout());
rb.add(rbOther);
rbpanel.add(rbOther);
rbOther.addActionListener(this);
othercharfield.setEnabled(false); // Is going to be enabled when rbOther gets selected (and disabled again when rbLinesOrTabs is selected again), that is where the actionlisteners are for
rbotherpanel.add(othercharfield);
rbpanel.add(rbotherpanel);
formatbp.add(rbpanel,gbc);
formatbp.add(formatb,gbc); // formatb is the button
(большинство объектов, где инициализируются ранее в коде)
Но это результат:
Что я делаю неправильно?
EDIT: Я обнаружил, что я сделал ошибку здесь:
rbpanel.add(rbOther);
Это должно было быть:
rbotherpanel.add(rbOther);
Теперь я получаю:
лучше, но Другой элемент не выравнивается правильно. (это немного вправо, как вы можете видеть)
Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). –
Не рекомендуется повторно использовать один и тот же экземпляр «GridBagConstraints» для нескольких компонентов. – predi
@com. Мальчик, как вы получили алмазы вместо кругов? Кроме того, что такое первое программное обеспечение, с которым вы сделали этот макет (черный n белый) –