Как выровнять дно 3 JLabels, которые содержатся в JPanel - PullRequest
0 голосов
/ 22 декабря 2011

Я пытаюсь выровнять нижнюю часть 3 JLabels, которые содержат изображение. 3 JLabels хранятся в одной большой JPanel. Я нашел здесь учебник по GUI с использованием Java Swing. Но по какой-то причине, если я применяю пример кода (который приведен для кнопок), он не работает на JLabels или JPanel. Это пример кода с сайта Oracle:

button1.setAlignmentY(Component.BOTTOM_ALIGNMENT);
button2.setAlignmentY(Component.BOTTOM_ALIGNMENT);

Есть идеи, что пошло не так? Я мог бы отправить свой код, но я подумал, что, может быть, это слишком запутанно, поскольку простой ответ слишком прост для большинства из вас здесь.

Заранее спасибо.

EDIT:

public class LayoutOef_01 extends JFrame{

    JPanel paneel;
    JLabel label1, label2, label3;
    ImageIcon pic1, pic2, pic3;
    Border panelBord, labelBord;


    public Layout_01(String titel){
        super(titel);

        paneel = new JPanel();

        pic1 = new ImageIcon("images/simon1.png");
        pic2 = new ImageIcon("images/simon2.png");
        pic3 = new ImageIcon("images/simon3.png");

        label1 = new JLabel(pic1);
        label2 = new JLabel(pic2);
        label3 = new JLabel(pic3);

        paneel.add(label1);
        paneel.add(label2);
        paneel.add(label3);

        panelBoord = BorderFactory.createLineBorder(Color.WHITE, 30);
        paneel.setBorder(panelBord);
        paneel.setBackground(Color.WHITE);

        labelBoord = BorderFactory.createLineBorder(Color.BLACK, 2);
        label1.setBorder(labelBord);
        label2.setBorder(labelBord);
        label3.setBorder(labelBord);

        this.getContentPane().add(paneel);
        this.pack();
    }

    public static void main(String[] args) {
        Layout_01 lay1 = new LayoutOef_01("Layout_01");
        lay1.setVisible(true);
    }

}

Итак, я попытался поместить следующий код - в разные места - внутри кода выше, но ничего не изменилось:

label1.setAlignmentY(Component.BOTTOM_ALIGNMENT);
label2.setAlignmentY(Component.BOTTOM_ALIGNMENT);
label3.setAlignmentY(Component.BOTTOM_ALIGNMENT);

1 Ответ

2 голосов
/ 22 декабря 2011

Проверьте этот образец: http://www.java2s.com/Code/JavaAPI/java.awt/ComponentBOTTOMALIGNMENT.htm

Не забудьте: - установить макет на панели.- установить выравнивание на кнопке - добавить кнопку на панель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...