Я пытаюсь разработать интерфейс с 4 разными панелями в одном кадре. Я включил 2 описания панелей в приведенный ниже код.
Ниже приведена часть моего кода:
public class finalFrame extends JFrame {
PanelA a = new PanelA()
PanelB b = new PanelB()
// ...
public finalFrame() {
super();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//...
//...
//...
add(a);
add(b);
}
}
class PanelA extends JPanel {
JButton bt = new JButton();
add(bt);
//...
}
class PanelB extends JPanel {
// ...
//... }
class Program {
public static void main(String [] args) {
finalFrame fr = new finalFrame();
}
}
Этот код, похоже, не работает (он отображает только последнюю панель нечетного размера (не то, что я хотел)). Тем не менее, когда я настраиваю разные панели ВНУТРИ класса фрейма (а не отдельных классов панелей), все работает отлично. Почему я не могу использовать разные классы панелей, а затем просто добавить их все в окончательный класс Frame?
Кроме того (извините за все вопросы), если я включу панель, настроенную в класс фрейма, и включу макет фрейма, тогда это сработает (как я только что упомянул). Однако, если я включаю панель, настроенную в класс фрейма, но НЕ включаю макет фрейма, то отображается только последняя панель, использующая макет фрейма. Почему он не изображает ни одну из других панелей??
Спасибо!!