добавить jbutton в jpanel после создания - PullRequest
0 голосов
/ 14 марта 2019

Я пытаюсь добавить JButton к JPanel, сидящему в JFrame, во время работы программы. Кнопка на самом деле работает (кликабельна), но не появляется.

JButton takeOffButton = new JButton();
    takeOffButton.setText("Take Off");
    takeOffButton.setBounds(30, 30, 100, 100);
    takeOffButton.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            Game.switchState(GameState.SPACE, Game.player.curPlanet);
        }

    });
    takeOffButton.setVisible(true);

    panel.add(takeOffButton);

Я установил макет рамки и панели на null, используя setLayout (null)

Что здесь может происходить?

РЕДАКТИРОВАТЬ: я пытался просто добавить JButton к JPanel в конструкторе панели, и даже это не работает ..

1 Ответ

0 голосов
/ 14 марта 2019

Смотрите мой комментарий о менеджерах верстки! Если у вас есть нулевой менеджер, вы должны переопределить метод paintChildren вашей панели и разместить дочерние элементы самостоятельно. Гораздо проще использовать менеджер раскладки.

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